{"cells":[{"cell_type":"markdown","metadata":{"id":"T2WWQiheMF7q"},"source":["# MMEditing Basic Tutorial\n","\n","Welcome to MMEditing! This is the official Colab tutorial for MMEditing. In this tutorial you will learn how to train and test a restorer using the APIs provided in MMEditing. \n","\n","This is a quick guide for you to train and test existing models. If you want to develop you own models based on MMEditing and know more about the code structures, please refer to our comprehensive tutorial [here]().\n","\n","[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/open-mmlab/mmedit/blob/main/demo/restorer_basic_tutorial.ipynb)\n","\n"]},{"cell_type":"markdown","metadata":{"id":"-kYw3WQ0MQry"},"source":["## Install MMEditing\n","\n","MMEditing can be installed in three steps:\n","\n","1. Install a compatible PyTorch version (You need to check you CUDA version by using `nvcc -V`).\n","2. Install pre-compiled MMCV\n","3. Clone and install MMEditing\n","\n","The steps are shown below:"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":279948,"status":"ok","timestamp":1625140820804,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"GIeIZEzZMfc0","outputId":"fe2e5ded-988d-4563-eb18-374344c316ef"},"outputs":[{"name":"stdout","output_type":"stream","text":["Looking in links: https://download.pytorch.org/whl/torch_stable.html\n","Collecting torch==1.7.0+cu110\n","\u001b[?25l  Downloading https://download.pytorch.org/whl/cu110/torch-1.7.0%2Bcu110-cp37-cp37m-linux_x86_64.whl (1137.1MB)\n","\u001b[K     |███████████████████████▌        | 834.1MB 1.3MB/s eta 0:03:50tcmalloc: large alloc 1147494400 bytes == 0x56458d07a000 @  0x7fce190c6615 0x5645535bfcdc 0x56455369f52a 0x5645535c2afd 0x5645536b3fed 0x564553636988 0x5645536314ae 0x5645535c43ea 0x5645536367f0 0x5645536314ae 0x5645535c43ea 0x56455363332a 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x5645537373e1 0x5645536976a9 0x564553602cc4 0x5645535c3559 0x5645536374f8 0x5645535c430a 0x5645536323b5 0x5645536317ad 0x5645535c43ea 0x5645536323b5 0x5645535c430a 0x5645536323b5\n","\u001b[K     |█████████████████████████████▊  | 1055.7MB 1.2MB/s eta 0:01:07tcmalloc: large alloc 1434370048 bytes == 0x5645d16d0000 @  0x7fce190c6615 0x5645535bfcdc 0x56455369f52a 0x5645535c2afd 0x5645536b3fed 0x564553636988 0x5645536314ae 0x5645535c43ea 0x5645536367f0 0x5645536314ae 0x5645535c43ea 0x56455363332a 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x564553632853 0x5645536b4e36 0x5645537373e1 0x5645536976a9 0x564553602cc4 0x5645535c3559 0x5645536374f8 0x5645535c430a 0x5645536323b5 0x5645536317ad 0x5645535c43ea 0x5645536323b5 0x5645535c430a 0x5645536323b5\n","\u001b[K     |████████████████████████████████| 1137.1MB 1.1MB/s eta 0:00:01tcmalloc: large alloc 1421369344 bytes == 0x564626ebc000 @  0x7fce190c6615 0x5645535bfcdc 0x56455369f52a 0x5645535c2afd 0x5645536b3fed 0x564553636988 0x5645536314ae 0x5645535c43ea 0x56455363260e 0x5645536314ae 0x5645535c43ea 0x56455363260e 0x5645536314ae 0x5645535c43ea 0x56455363260e 0x5645536314ae 0x5645535c43ea 0x56455363260e 0x5645536314ae 0x5645535c43ea 0x56455363260e 0x5645535c430a 0x56455363260e 0x5645536314ae 0x5645535c43ea 0x56455363332a 0x5645536314ae 0x5645535c43ea 0x56455363332a 0x5645536314ae 0x5645535c4a81\n","\u001b[K     |████████████████████████████████| 1137.1MB 16kB/s \n","\u001b[?25hCollecting torchvision==0.8.0\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/1d/3f/4f45249458a0dee85bff7acf4a2ac6177708253f1f318fcf6ee230fb864f/torchvision-0.8.0-cp37-cp37m-manylinux1_x86_64.whl (11.8MB)\n","\u001b[K     |████████████████████████████████| 11.8MB 254kB/s \n","\u001b[?25hRequirement already satisfied, skipping upgrade: typing-extensions in /usr/local/lib/python3.7/dist-packages (from torch==1.7.0+cu110) (3.7.4.3)\n","Collecting dataclasses\n","  Downloading https://files.pythonhosted.org/packages/26/2f/1095cdc2868052dd1e64520f7c0d5c8c550ad297e944e641dbf1ffbb9a5d/dataclasses-0.6-py3-none-any.whl\n","Requirement already satisfied, skipping upgrade: numpy in /usr/local/lib/python3.7/dist-packages (from torch==1.7.0+cu110) (1.19.5)\n","Requirement already satisfied, skipping upgrade: future in /usr/local/lib/python3.7/dist-packages (from torch==1.7.0+cu110) (0.16.0)\n","Requirement already satisfied, skipping upgrade: pillow>=4.1.1 in /usr/local/lib/python3.7/dist-packages (from torchvision==0.8.0) (7.1.2)\n","\u001b[31mERROR: torchtext 0.10.0 has requirement torch==1.9.0, but you'll have torch 1.7.0+cu110 which is incompatible.\u001b[0m\n","Installing collected packages: dataclasses, torch, torchvision\n","  Found existing installation: torch 1.9.0+cu102\n","    Uninstalling torch-1.9.0+cu102:\n","      Successfully uninstalled torch-1.9.0+cu102\n","  Found existing installation: torchvision 0.10.0+cu102\n","    Uninstalling torchvision-0.10.0+cu102:\n","      Successfully uninstalled torchvision-0.10.0+cu102\n","Successfully installed dataclasses-0.6 torch-1.7.0+cu110 torchvision-0.8.0\n","Looking in links: https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/index.html\n","Collecting mmcv-full==1.3.5\n","\u001b[?25l  Downloading https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.0/mmcv_full-1.3.5-cp37-cp37m-manylinux1_x86_64.whl (31.1MB)\n","\u001b[K     |████████████████████████████████| 31.1MB 107kB/s \n","\u001b[?25hRequirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from mmcv-full==1.3.5) (1.19.5)\n","Collecting addict\n","  Downloading https://files.pythonhosted.org/packages/6a/00/b08f23b7d7e1e14ce01419a467b583edbb93c6cdb8654e54a9cc579cd61f/addict-2.4.0-py3-none-any.whl\n","Collecting yapf\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/5f/0d/8814e79eb865eab42d95023b58b650d01dec6f8ea87fc9260978b1bf2167/yapf-0.31.0-py2.py3-none-any.whl (185kB)\n","\u001b[K     |████████████████████████████████| 194kB 33.0MB/s \n","\u001b[?25hRequirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from mmcv-full==1.3.5) (7.1.2)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.7/dist-packages (from mmcv-full==1.3.5) (3.13)\n","Requirement already satisfied: opencv-python>=3 in /usr/local/lib/python3.7/dist-packages (from mmcv-full==1.3.5) (4.1.2.30)\n","Installing collected packages: addict, yapf, mmcv-full\n","Successfully installed addict-2.4.0 mmcv-full-1.3.5 yapf-0.31.0\n","Cloning into 'mmediting'...\n","remote: Enumerating objects: 7162, done.\u001b[K\n","remote: Counting objects: 100% (1367/1367), done.\u001b[K\n","remote: Compressing objects: 100% (793/793), done.\u001b[K\n","remote: Total 7162 (delta 827), reused 928 (delta 554), pack-reused 5795\u001b[K\n","Receiving objects: 100% (7162/7162), 5.02 MiB | 32.14 MiB/s, done.\n","Resolving deltas: 100% (4826/4826), done.\n","/content/mmediting\n","Requirement already satisfied: lmdb in /usr/local/lib/python3.7/dist-packages (from -r requirements/runtime.txt (line 1)) (0.99)\n","Requirement already satisfied: mmcv-full>=1.2.0 in /usr/local/lib/python3.7/dist-packages (from -r requirements/runtime.txt (line 2)) (1.3.5)\n","Requirement already satisfied: scikit-image in /usr/local/lib/python3.7/dist-packages (from -r requirements/runtime.txt (line 3)) (0.16.2)\n","Requirement already satisfied: tensorboard in /usr/local/lib/python3.7/dist-packages (from -r requirements/runtime.txt (line 4)) (2.5.0)\n","Requirement already satisfied: yapf in /usr/local/lib/python3.7/dist-packages (from -r requirements/runtime.txt (line 5)) (0.31.0)\n","Collecting codecov\n","  Downloading https://files.pythonhosted.org/packages/93/9f/bbea5b6231308458963cb5c067bc5643da9949689702fa5a382714b59699/codecov-2.1.11-py2.py3-none-any.whl\n","Collecting flake8\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/fc/80/35a0716e5d5101e643404dabd20f07f5528a21f3ef4032d31a49c913237b/flake8-3.9.2-py2.py3-none-any.whl (73kB)\n","\u001b[K     |████████████████████████████████| 81kB 9.7MB/s \n","\u001b[?25hCollecting interrogate\n","  Downloading https://files.pythonhosted.org/packages/cd/6d/ce3ac440b13c1b36b323a0eab191499a902adade3cc11b18078c07af3e6e/interrogate-1.4.0-py3-none-any.whl\n","Collecting isort==4.3.21\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/e5/b0/c121fd1fa3419ea9bfd55c7f9c4fedfec5143208d8c7ad3ce3db6c623c21/isort-4.3.21-py2.py3-none-any.whl (42kB)\n","\u001b[K     |████████████████████████████████| 51kB 7.5MB/s \n","\u001b[?25hCollecting onnxruntime\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/f9/76/3d0f8bb2776961c7335693df06eccf8d099e48fa6fb552c7546867192603/onnxruntime-1.8.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5MB)\n","\u001b[K     |████████████████████████████████| 4.5MB 37.4MB/s \n","\u001b[?25hRequirement already satisfied: pytest in /usr/local/lib/python3.7/dist-packages (from -r requirements/tests.txt (line 6)) (3.6.4)\n","Collecting pytest-runner\n","  Downloading https://files.pythonhosted.org/packages/f4/f5/6605d73bf3f4c198915872111b10c4b3c2dccd8485f47b7290ceef037190/pytest_runner-5.3.1-py3-none-any.whl\n","Requirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->-r requirements/runtime.txt (line 2)) (1.19.5)\n","Requirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->-r requirements/runtime.txt (line 2)) (7.1.2)\n","Requirement already satisfied: addict in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->-r requirements/runtime.txt (line 2)) (2.4.0)\n","Requirement already satisfied: opencv-python>=3 in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->-r requirements/runtime.txt (line 2)) (4.1.2.30)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->-r requirements/runtime.txt (line 2)) (3.13)\n","Requirement already satisfied: networkx>=2.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->-r requirements/runtime.txt (line 3)) (2.5.1)\n","Requirement already satisfied: imageio>=2.3.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->-r requirements/runtime.txt (line 3)) (2.4.1)\n","Requirement already satisfied: scipy>=0.19.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->-r requirements/runtime.txt (line 3)) (1.4.1)\n","Requirement already satisfied: PyWavelets>=0.4.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->-r requirements/runtime.txt (line 3)) (1.1.1)\n","Requirement already satisfied: matplotlib!=3.0.0,>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->-r requirements/runtime.txt (line 3)) (3.2.2)\n","Requirement already satisfied: wheel>=0.26; python_version >= \"3\" in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (0.36.2)\n","Requirement already satisfied: grpcio>=1.24.3 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (1.34.1)\n","Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (0.6.1)\n","Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (1.8.0)\n","Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (2.23.0)\n","Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (0.4.4)\n","Requirement already satisfied: setuptools>=41.0.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (57.0.0)\n","Requirement already satisfied: absl-py>=0.4 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (0.12.0)\n","Requirement already satisfied: protobuf>=3.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (3.12.4)\n","Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (3.3.4)\n","Requirement already satisfied: google-auth<2,>=1.6.3 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (1.31.0)\n","Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.7/dist-packages (from tensorboard->-r requirements/runtime.txt (line 4)) (1.0.1)\n","Requirement already satisfied: coverage in /usr/local/lib/python3.7/dist-packages (from codecov->-r requirements/tests.txt (line 1)) (3.7.1)\n","Collecting pyflakes<2.4.0,>=2.3.0\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/6c/11/2a745612f1d3cbbd9c69ba14b1b43a35a2f5c3c81cd0124508c52c64307f/pyflakes-2.3.1-py2.py3-none-any.whl (68kB)\n","\u001b[K     |████████████████████████████████| 71kB 9.8MB/s \n","\u001b[?25hCollecting pycodestyle<2.8.0,>=2.7.0\n","\u001b[?25l  Downloading https://files.pythonhosted.org/packages/de/cc/227251b1471f129bc35e966bb0fceb005969023926d744139642d847b7ae/pycodestyle-2.7.0-py2.py3-none-any.whl (41kB)\n","\u001b[K     |████████████████████████████████| 51kB 8.7MB/s \n","\u001b[?25hCollecting mccabe<0.7.0,>=0.6.0\n","  Downloading https://files.pythonhosted.org/packages/87/89/479dc97e18549e21354893e4ee4ef36db1d237534982482c3681ee6e7b57/mccabe-0.6.1-py2.py3-none-any.whl\n","Requirement already satisfied: importlib-metadata; python_version < \"3.8\" in /usr/local/lib/python3.7/dist-packages (from flake8->-r requirements/tests.txt (line 2)) (4.5.0)\n","Requirement already satisfied: tabulate in /usr/local/lib/python3.7/dist-packages (from interrogate->-r requirements/tests.txt (line 3)) (0.8.9)\n","Collecting colorama\n","  Downloading https://files.pythonhosted.org/packages/44/98/5b86278fbbf250d239ae0ecb724f8572af1c91f4a11edf4d36a206189440/colorama-0.4.4-py2.py3-none-any.whl\n","Requirement already satisfied: click in /usr/local/lib/python3.7/dist-packages (from interrogate->-r requirements/tests.txt (line 3)) (7.1.2)\n","Requirement already satisfied: toml in /usr/local/lib/python3.7/dist-packages (from interrogate->-r requirements/tests.txt (line 3)) (0.10.2)\n","Requirement already satisfied: py in /usr/local/lib/python3.7/dist-packages (from interrogate->-r requirements/tests.txt (line 3)) (1.10.0)\n","Requirement already satisfied: attrs in /usr/local/lib/python3.7/dist-packages (from interrogate->-r requirements/tests.txt (line 3)) (21.2.0)\n","Requirement already satisfied: flatbuffers in /usr/local/lib/python3.7/dist-packages (from onnxruntime->-r requirements/tests.txt (line 5)) (1.12)\n","Requirement already satisfied: more-itertools>=4.0.0 in /usr/local/lib/python3.7/dist-packages (from pytest->-r requirements/tests.txt (line 6)) (8.8.0)\n","Requirement already satisfied: pluggy<0.8,>=0.5 in /usr/local/lib/python3.7/dist-packages (from pytest->-r requirements/tests.txt (line 6)) (0.7.1)\n","Requirement already satisfied: six>=1.10.0 in /usr/local/lib/python3.7/dist-packages (from pytest->-r requirements/tests.txt (line 6)) (1.15.0)\n","Requirement already satisfied: atomicwrites>=1.0 in /usr/local/lib/python3.7/dist-packages (from pytest->-r requirements/tests.txt (line 6)) (1.4.0)\n","Requirement already satisfied: decorator<5,>=4.3 in /usr/local/lib/python3.7/dist-packages (from networkx>=2.0->scikit-image->-r requirements/runtime.txt (line 3)) (4.4.2)\n","Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->-r requirements/runtime.txt (line 3)) (0.10.0)\n","Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->-r requirements/runtime.txt (line 3)) (2.8.1)\n","Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->-r requirements/runtime.txt (line 3)) (2.4.7)\n","Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->-r requirements/runtime.txt (line 3)) (1.3.1)\n","Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->-r requirements/runtime.txt (line 4)) (3.0.4)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->-r requirements/runtime.txt (line 4)) (2021.5.30)\n","Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->-r requirements/runtime.txt (line 4)) (1.24.3)\n","Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->-r requirements/runtime.txt (line 4)) (2.10)\n","Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.7/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard->-r requirements/runtime.txt (line 4)) (1.3.0)\n","Requirement already satisfied: rsa<5,>=3.1.4; python_version >= \"3.6\" in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->-r requirements/runtime.txt (line 4)) (4.7.2)\n","Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->-r requirements/runtime.txt (line 4)) (0.2.8)\n","Requirement already satisfied: cachetools<5.0,>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->-r requirements/runtime.txt (line 4)) (4.2.2)\n","Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < \"3.8\"->flake8->-r requirements/tests.txt (line 2)) (3.4.1)\n","Requirement already satisfied: typing-extensions>=3.6.4; python_version < \"3.8\" in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < \"3.8\"->flake8->-r requirements/tests.txt (line 2)) (3.7.4.3)\n","Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard->-r requirements/runtime.txt (line 4)) (3.1.1)\n","Requirement already satisfied: pyasn1>=0.1.3 in /usr/local/lib/python3.7/dist-packages (from rsa<5,>=3.1.4; python_version >= \"3.6\"->google-auth<2,>=1.6.3->tensorboard->-r requirements/runtime.txt (line 4)) (0.4.8)\n","Installing collected packages: codecov, pyflakes, pycodestyle, mccabe, flake8, colorama, interrogate, isort, onnxruntime, pytest-runner\n","Successfully installed codecov-2.1.11 colorama-0.4.4 flake8-3.9.2 interrogate-1.4.0 isort-4.3.21 mccabe-0.6.1 onnxruntime-1.8.0 pycodestyle-2.7.0 pyflakes-2.3.1 pytest-runner-5.3.1\n","Created temporary directory: /tmp/pip-ephem-wheel-cache-hu6xvjxh\n","Created temporary directory: /tmp/pip-req-tracker-zk5q0q3z\n","Created requirements tracker '/tmp/pip-req-tracker-zk5q0q3z'\n","Created temporary directory: /tmp/pip-install-vr_vpseo\n","Obtaining file:///content/mmediting\n","  Added file:///content/mmediting to build tracker '/tmp/pip-req-tracker-zk5q0q3z'\n","    Running setup.py (path:/content/mmediting/setup.py) egg_info for package from file:///content/mmediting\n","    Running command python setup.py egg_info\n","    running egg_info\n","    creating mmedit.egg-info\n","    writing mmedit.egg-info/PKG-INFO\n","    writing dependency_links to mmedit.egg-info/dependency_links.txt\n","    writing requirements to mmedit.egg-info/requires.txt\n","    writing top-level names to mmedit.egg-info/top_level.txt\n","    writing manifest file 'mmedit.egg-info/SOURCES.txt'\n","    reading manifest template 'MANIFEST.in'\n","    warning: no files found matching 'mmedit/VERSION'\n","    warning: no files found matching 'mmedit/model_zoo.yml'\n","    warning: no files found matching '*.py' under directory 'mmedit/configs'\n","    warning: no files found matching '*.yml' under directory 'mmedit/configs'\n","    warning: no files found matching '*.sh' under directory 'mmedit/tools'\n","    warning: no files found matching '*.py' under directory 'mmedit/tools'\n","    adding license file 'LICENSE'\n","    writing manifest file 'mmedit.egg-info/SOURCES.txt'\n","  Source in /content/mmediting has version 0.8.0, which satisfies requirement mmedit==0.8.0 from file:///content/mmediting\n","  Removed mmedit==0.8.0 from file:///content/mmediting from build tracker '/tmp/pip-req-tracker-zk5q0q3z'\n","Requirement already satisfied: lmdb in /usr/local/lib/python3.7/dist-packages (from mmedit==0.8.0) (0.99)\n","Requirement already satisfied: mmcv-full>=1.2.0 in /usr/local/lib/python3.7/dist-packages (from mmedit==0.8.0) (1.3.5)\n","Requirement already satisfied: scikit-image in /usr/local/lib/python3.7/dist-packages (from mmedit==0.8.0) (0.16.2)\n","Requirement already satisfied: tensorboard in /usr/local/lib/python3.7/dist-packages (from mmedit==0.8.0) (2.5.0)\n","Requirement already satisfied: yapf in /usr/local/lib/python3.7/dist-packages (from mmedit==0.8.0) (0.31.0)\n","Requirement already satisfied: pyyaml in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->mmedit==0.8.0) (3.13)\n","Requirement already satisfied: opencv-python>=3 in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->mmedit==0.8.0) (4.1.2.30)\n","Requirement already satisfied: Pillow in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->mmedit==0.8.0) (7.1.2)\n","Requirement already satisfied: addict in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->mmedit==0.8.0) (2.4.0)\n","Requirement already satisfied: numpy in /usr/local/lib/python3.7/dist-packages (from mmcv-full>=1.2.0->mmedit==0.8.0) (1.19.5)\n","Requirement already satisfied: networkx>=2.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->mmedit==0.8.0) (2.5.1)\n","Requirement already satisfied: scipy>=0.19.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->mmedit==0.8.0) (1.4.1)\n","Requirement already satisfied: imageio>=2.3.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->mmedit==0.8.0) (2.4.1)\n","Requirement already satisfied: matplotlib!=3.0.0,>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->mmedit==0.8.0) (3.2.2)\n","Requirement already satisfied: PyWavelets>=0.4.0 in /usr/local/lib/python3.7/dist-packages (from scikit-image->mmedit==0.8.0) (1.1.1)\n","Requirement already satisfied: grpcio>=1.24.3 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (1.34.1)\n","Requirement already satisfied: protobuf>=3.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (3.12.4)\n","Requirement already satisfied: werkzeug>=0.11.15 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (1.0.1)\n","Requirement already satisfied: wheel>=0.26; python_version >= \"3\" in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (0.36.2)\n","Requirement already satisfied: google-auth<2,>=1.6.3 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (1.31.0)\n","Requirement already satisfied: absl-py>=0.4 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (0.12.0)\n","Requirement already satisfied: requests<3,>=2.21.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (2.23.0)\n","Requirement already satisfied: tensorboard-plugin-wit>=1.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (1.8.0)\n","Requirement already satisfied: markdown>=2.6.8 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (3.3.4)\n","Requirement already satisfied: google-auth-oauthlib<0.5,>=0.4.1 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (0.4.4)\n","Requirement already satisfied: tensorboard-data-server<0.7.0,>=0.6.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (0.6.1)\n","Requirement already satisfied: setuptools>=41.0.0 in /usr/local/lib/python3.7/dist-packages (from tensorboard->mmedit==0.8.0) (57.0.0)\n","Requirement already satisfied: decorator<5,>=4.3 in /usr/local/lib/python3.7/dist-packages (from networkx>=2.0->scikit-image->mmedit==0.8.0) (4.4.2)\n","Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->mmedit==0.8.0) (0.10.0)\n","Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->mmedit==0.8.0) (2.8.1)\n","Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->mmedit==0.8.0) (2.4.7)\n","Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.7/dist-packages (from matplotlib!=3.0.0,>=2.0.0->scikit-image->mmedit==0.8.0) (1.3.1)\n","Requirement already satisfied: six>=1.5.2 in /usr/local/lib/python3.7/dist-packages (from grpcio>=1.24.3->tensorboard->mmedit==0.8.0) (1.15.0)\n","Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->mmedit==0.8.0) (0.2.8)\n","Requirement already satisfied: cachetools<5.0,>=2.0.0 in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->mmedit==0.8.0) (4.2.2)\n","Requirement already satisfied: rsa<5,>=3.1.4; python_version >= \"3.6\" in /usr/local/lib/python3.7/dist-packages (from google-auth<2,>=1.6.3->tensorboard->mmedit==0.8.0) (4.7.2)\n","Requirement already satisfied: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->mmedit==0.8.0) (1.24.3)\n","Requirement already satisfied: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->mmedit==0.8.0) (3.0.4)\n","Requirement already satisfied: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->mmedit==0.8.0) (2.10)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests<3,>=2.21.0->tensorboard->mmedit==0.8.0) (2021.5.30)\n","Requirement already satisfied: importlib-metadata; python_version < \"3.8\" in /usr/local/lib/python3.7/dist-packages (from markdown>=2.6.8->tensorboard->mmedit==0.8.0) (4.5.0)\n","Requirement already satisfied: requests-oauthlib>=0.7.0 in /usr/local/lib/python3.7/dist-packages (from google-auth-oauthlib<0.5,>=0.4.1->tensorboard->mmedit==0.8.0) (1.3.0)\n","Requirement already satisfied: pyasn1<0.5.0,>=0.4.6 in /usr/local/lib/python3.7/dist-packages (from pyasn1-modules>=0.2.1->google-auth<2,>=1.6.3->tensorboard->mmedit==0.8.0) (0.4.8)\n","Requirement already satisfied: zipp>=0.5 in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < \"3.8\"->markdown>=2.6.8->tensorboard->mmedit==0.8.0) (3.4.1)\n","Requirement already satisfied: typing-extensions>=3.6.4; python_version < \"3.8\" in /usr/local/lib/python3.7/dist-packages (from importlib-metadata; python_version < \"3.8\"->markdown>=2.6.8->tensorboard->mmedit==0.8.0) (3.7.4.3)\n","Requirement already satisfied: oauthlib>=3.0.0 in /usr/local/lib/python3.7/dist-packages (from requests-oauthlib>=0.7.0->google-auth-oauthlib<0.5,>=0.4.1->tensorboard->mmedit==0.8.0) (3.1.1)\n","Installing collected packages: mmedit\n","  Running setup.py develop for mmedit\n","    Running command /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '\"'\"'/content/mmediting/setup.py'\"'\"'; __file__='\"'\"'/content/mmediting/setup.py'\"'\"';f=getattr(tokenize, '\"'\"'open'\"'\"', open)(__file__);code=f.read().replace('\"'\"'\\r\\n'\"'\"', '\"'\"'\\n'\"'\"');f.close();exec(compile(code, __file__, '\"'\"'exec'\"'\"'))' develop --no-deps\n","    running develop\n","    running egg_info\n","    writing mmedit.egg-info/PKG-INFO\n","    writing dependency_links to mmedit.egg-info/dependency_links.txt\n","    writing requirements to mmedit.egg-info/requires.txt\n","    writing top-level names to mmedit.egg-info/top_level.txt\n","    reading manifest template 'MANIFEST.in'\n","    warning: no files found matching 'mmedit/VERSION'\n","    warning: no files found matching 'mmedit/model_zoo.yml'\n","    warning: no files found matching '*.py' under directory 'mmedit/configs'\n","    warning: no files found matching '*.yml' under directory 'mmedit/configs'\n","    warning: no files found matching '*.sh' under directory 'mmedit/tools'\n","    warning: no files found matching '*.py' under directory 'mmedit/tools'\n","    adding license file 'LICENSE'\n","    writing manifest file 'mmedit.egg-info/SOURCES.txt'\n","    running build_ext\n","    Creating /usr/local/lib/python3.7/dist-packages/mmedit.egg-link (link to .)\n","    Adding mmedit 0.8.0 to easy-install.pth file\n","\n","    Installed /content/mmediting\n","Successfully installed mmedit\n","Cleaning up...\n","Removed build tracker '/tmp/pip-req-tracker-zk5q0q3z'\n"]}],"source":["# Install openmim for the installation of mmcv-full\n","!pip install openmim\n","\n","# Install mmcv-full thus we could use CUDA operators\n","!mim install mmcv-full\n","\n","# Clone MMEditing\n","!rm -rf mmediting\n","!git clone https://github.com/open-mmlab/mmediting.git\n","%cd mmediting\n","\n","# Install MMEditing\n","!pip install -v -e ."]},{"cell_type":"markdown","metadata":{"id":"QgX96Sc_3PcV"},"source":["## Download necessary material for this demo\n","We will need some data and configuration files in this demo. We will download it and put it in `./demo_files/`"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":4723,"status":"ok","timestamp":1625140825508,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"-K0zFSJ-3V42","outputId":"528a87f7-f78e-4219-84f3-dec19b88e88a"},"outputs":[{"name":"stdout","output_type":"stream","text":["--2021-07-01 11:59:48--  https://download.openmmlab.com/mmediting/demo_files.zip\n","Resolving download.openmmlab.com (download.openmmlab.com)... 47.252.96.35\n","Connecting to download.openmmlab.com (download.openmmlab.com)|47.252.96.35|:443... connected.\n","HTTP request sent, awaiting response... 200 OK\n","Length: 19215781 (18M) [application/zip]\n","Saving to: ‘demo_files.zip’\n","\n","demo_files.zip      100%[===================>]  18.33M  6.00MB/s    in 3.1s    \n","\n","2021-07-01 11:59:52 (6.00 MB/s) - ‘demo_files.zip’ saved [19215781/19215781]\n","\n","Archive:  demo_files.zip\n","   creating: demo_files/\n","  inflating: demo_files/demo_config_EDVR.py  \n","  inflating: demo_files/demo_config_BasicVSR.py  \n","   creating: demo_files/lq_sequences/\n","   creating: demo_files/lq_sequences/calendar/\n","  inflating: demo_files/lq_sequences/calendar/00000006.png  \n","  inflating: demo_files/lq_sequences/calendar/00000007.png  \n","  inflating: demo_files/lq_sequences/calendar/00000010.png  \n","  inflating: demo_files/lq_sequences/calendar/00000004.png  \n","  inflating: demo_files/lq_sequences/calendar/00000003.png  \n","  inflating: demo_files/lq_sequences/calendar/00000001.png  \n","  inflating: demo_files/lq_sequences/calendar/00000000.png  \n","  inflating: demo_files/lq_sequences/calendar/00000009.png  \n","  inflating: demo_files/lq_sequences/calendar/00000008.png  \n","  inflating: demo_files/lq_sequences/calendar/00000002.png  \n","  inflating: demo_files/lq_sequences/calendar/00000005.png  \n","   creating: demo_files/lq_sequences/city/\n","  inflating: demo_files/lq_sequences/city/00000006.png  \n","  inflating: demo_files/lq_sequences/city/00000007.png  \n","  inflating: demo_files/lq_sequences/city/00000010.png  \n","  inflating: demo_files/lq_sequences/city/00000004.png  \n","  inflating: demo_files/lq_sequences/city/00000003.png  \n","  inflating: demo_files/lq_sequences/city/00000001.png  \n","  inflating: demo_files/lq_sequences/city/00000000.png  \n","  inflating: demo_files/lq_sequences/city/00000009.png  \n","  inflating: demo_files/lq_sequences/city/00000008.png  \n","  inflating: demo_files/lq_sequences/city/00000002.png  \n","  inflating: demo_files/lq_sequences/city/00000005.png  \n","   creating: demo_files/lq_sequences/.ipynb_checkpoints/\n","   creating: demo_files/gt_images/\n","  inflating: demo_files/gt_images/bird.png  \n","  inflating: demo_files/gt_images/woman.png  \n","  inflating: demo_files/gt_images/head.png  \n","  inflating: demo_files/gt_images/baby.png  \n","  inflating: demo_files/gt_images/butterfly.png  \n","  inflating: demo_files/demo_config_SRCNN.py  \n","   creating: demo_files/lq_images/\n"," extracting: demo_files/lq_images/bird.png  \n"," extracting: demo_files/lq_images/woman.png  \n"," extracting: demo_files/lq_images/head.png  \n"," extracting: demo_files/lq_images/baby.png  \n"," extracting: demo_files/lq_images/butterfly.png  \n","   creating: demo_files/gt_sequences/\n","   creating: demo_files/gt_sequences/calendar/\n","  inflating: demo_files/gt_sequences/calendar/00000006.png  \n","  inflating: demo_files/gt_sequences/calendar/00000007.png  \n","  inflating: demo_files/gt_sequences/calendar/00000010.png  \n","  inflating: demo_files/gt_sequences/calendar/00000004.png  \n","  inflating: demo_files/gt_sequences/calendar/00000003.png  \n","  inflating: demo_files/gt_sequences/calendar/00000001.png  \n","  inflating: demo_files/gt_sequences/calendar/00000000.png  \n","  inflating: demo_files/gt_sequences/calendar/00000009.png  \n","  inflating: demo_files/gt_sequences/calendar/00000008.png  \n","  inflating: demo_files/gt_sequences/calendar/00000002.png  \n","  inflating: demo_files/gt_sequences/calendar/00000005.png  \n","   creating: demo_files/gt_sequences/city/\n","  inflating: demo_files/gt_sequences/city/00000006.png  \n","  inflating: demo_files/gt_sequences/city/00000007.png  \n","  inflating: demo_files/gt_sequences/city/00000010.png  \n","  inflating: demo_files/gt_sequences/city/00000004.png  \n","  inflating: demo_files/gt_sequences/city/00000003.png  \n","  inflating: demo_files/gt_sequences/city/00000001.png  \n","  inflating: demo_files/gt_sequences/city/00000000.png  \n","  inflating: demo_files/gt_sequences/city/00000009.png  \n","  inflating: demo_files/gt_sequences/city/00000008.png  \n","  inflating: demo_files/gt_sequences/city/00000002.png  \n","  inflating: demo_files/gt_sequences/city/00000005.png  \n","   creating: demo_files/gt_sequences/.ipynb_checkpoints/\n","   creating: demo_files/.ipynb_checkpoints/\n"]}],"source":["!wget https://download.openmmlab.com/mmediting/demo_files.zip  # download files\n","!unzip demo_files  # unzip\n","\n","# copy the data to data/Set5 for later use\n","!mkdir data\n","!mkdir data/val_set5\n","!cp -r demo_files/lq_images data/val_set5/Set5_bicLRx4\n","!cp -r demo_files/gt_images data/val_set5/Set5"]},{"cell_type":"markdown","metadata":{"id":"zXGurqGKOeNE"},"source":["## Inference with a pre-trained image restorer\n","You can easily perform inference on a single image with a pre-trained restorer by using `restoration_demo.py`. What you need are \n","\n","1. `CONFIG_FILE`: The configuration file corresponding to the restorer you want to use. It specifies the model you want to use. \n","2. `CHECKPOINT_FILE`: The path to the checkpoint of the pre-trained model. \n","3. `IMAGE_FILE`: The path to the input image.\n","4. `SAVE_FILE`: The location where you want to store the output image.\n","5. `imshow`: Whether to show the image. (Optional)\n","6. `GPU_ID`: Which GPU you want to use. (Optional)\n","\n","Once you have all these details, you can directly use the following command:\n","\n","```\n","python demo/restoration_demo.py ${CONFIG_FILE} ${CHECKPOINT_FILE} ${IMAGE_FILE} ${SAVE_FILE} [--imshow] [--device ${GPU_ID}]\n","```\n","\n","**Notes:** \n","1. Configuration files are located in `./configs`. \n","2. We support loading checkpoints from url. You can go to the corresponding page (e.g. [here](https://github.com/open-mmlab/mmediting/tree/master/configs/restorers/esrgan)) to obtain the url of the pretrained model.\n","\n","---\n","\n","We will now use `SRCNN` and `ESRGAN` as examples.\n","\n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":58677,"status":"ok","timestamp":1625140884175,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"KiPvtvlqM1zb","outputId":"be7375a7-4632-4770-8383-2a8ce654b069"},"outputs":[{"name":"stdout","output_type":"stream","text":["Use load_from_http loader\n","Downloading: \"https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth\" to /root/.cache/torch/hub/checkpoints/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth\n","100% 83.9k/83.9k [00:00<00:00, 1.59MB/s]\n","2021-07-01 12:00:10,779 - mmedit - INFO - Use load_from_torchvision loader\n","Downloading: \"https://download.pytorch.org/models/vgg19-dcbb9e9d.pth\" to /root/.cache/torch/hub/checkpoints/vgg19-dcbb9e9d.pth\n","100% 548M/548M [00:07<00:00, 76.0MB/s]\n","Use load_from_http loader\n","Downloading: \"https://download.openmmlab.com/mmediting/restorers/esrgan/esrgan_x4c64b23g32_1x16_400k_div2k_20200508-f8ccaf3b.pth\" to /root/.cache/torch/hub/checkpoints/esrgan_x4c64b23g32_1x16_400k_div2k_20200508-f8ccaf3b.pth\n","100% 196M/196M [00:26<00:00, 7.61MB/s]\n","bird_ESRGAN.png  bird_SRCNN.png\n"]}],"source":["# SRCNN\n","!python demo/restoration_demo.py ./configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth ./demo_files/lq_images/bird.png ./outputs/bird_SRCNN.png\n","\n","# ESRGAN\n","!python demo/restoration_demo.py ./configs/restorers/esrgan/esrgan_x4c64b23g32_g1_400k_div2k.py https://download.openmmlab.com/mmediting/restorers/esrgan/esrgan_x4c64b23g32_1x16_400k_div2k_20200508-f8ccaf3b.pth ./demo_files/lq_images/bird.png ./outputs/bird_ESRGAN.png\n","\n","# Check whether images are saved\n","!ls ./outputs"]},{"cell_type":"markdown","metadata":{"id":"W1DfGHu3Xcfd"},"source":["## Inference with a pre-trained video restorer\n","\n","MMEditing also supports video super-resolution methods, and the procedure is similar. You can use `restoration_video_demo.py` with the following arguments:\n","\n","1. `CONFIG_FILE`: The configuration file corresponding to the restorer you want to use\n","2. `CHECKPOINT_FILE`: The path to the checkpoint of the pre-trained model. \n","3. `INPUT_DIR`: The directory containing the video frames.\n","4. `OUTPUT_DIR`: The location where you want to store the output frames.\n","5. `WINDOW_SIZE`: The window size if you are using sliding-window method (Optional).\n","6. `GPU_ID`: Which GPU you want to use (Optional).\n","```\n","python demo/restoration_video_demo.py ${CONFIG_FILE} ${CHECKPOINT_FILE} ${INPUT_DIR} ${OUTPUT_DIR} [--window_size=$WINDOW_SIZE] [--device ${GPU_ID}]\n","```\n","**Note:** There are two different frameworks in video super-resolution: ***sliding-window*** and ***recurrent*** frameworks. When you use the methods of the sliding-window framework, such as EDVR, you need to specify `window_size`. This value is dependent on the model you use.\n","\n","---\n","\n","We will now use `EDVR` and `BasicVSR` as examples.\n","\n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":29263,"status":"ok","timestamp":1625140913405,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"iaoE7UF5Xb2i","outputId":"a022e0bd-c47a-450e-f4e4-1bf9f92e4813"},"outputs":[{"name":"stdout","output_type":"stream","text":["Use load_from_http loader\n","Downloading: \"https://download.openmmlab.com/mmediting/restorers/edvr/edvrm_wotsa_x4_8x4_600k_reds_20200522-0570e567.pth\" to /root/.cache/torch/hub/checkpoints/edvrm_wotsa_x4_8x4_600k_reds_20200522-0570e567.pth\n","100% 11.5M/11.5M [00:01<00:00, 8.55MB/s]\n","2021-07-01 12:01:09,689 - mmedit - INFO - Use load_from_http loader\n","Downloading: \"https://download.openmmlab.com/mmediting/restorers/basicvsr/spynet_20210409-c6c1bd09.pth\" to /root/.cache/torch/hub/checkpoints/spynet_20210409-c6c1bd09.pth\n","100% 5.50M/5.50M [00:00<00:00, 8.88MB/s]\n","Use load_from_http loader\n","Downloading: \"https://download.openmmlab.com/mmediting/restorers/basicvsr/basicvsr_reds4_20120409-0e599677.pth\" to /root/.cache/torch/hub/checkpoints/basicvsr_reds4_20120409-0e599677.pth\n","100% 24.1M/24.1M [00:02<00:00, 8.97MB/s]\n","The model and loaded state dict do not match exactly\n","\n","missing keys in source state_dict: step_counter\n","\n","00000000.png  00000003.png  00000006.png  00000009.png\n","00000001.png  00000004.png  00000007.png  00000010.png\n","00000002.png  00000005.png  00000008.png\n"]}],"source":["# EDVR (Sliding-window framework)\n","!python demo/restoration_video_demo.py ./configs/restorers/edvr/edvrm_wotsa_x4_g8_600k_reds.py https://download.openmmlab.com/mmediting/restorers/edvr/edvrm_wotsa_x4_8x4_600k_reds_20200522-0570e567.pth demo_files/lq_sequences/calendar/ ./outputs/calendar_EDVR --window_size=5\n","\n","# BasicVSR (Recurrent framework)\n","!python demo/restoration_video_demo.py ./configs/restorers/basicvsr/basicvsr_reds4.py https://download.openmmlab.com/mmediting/restorers/basicvsr/basicvsr_reds4_20120409-0e599677.pth demo_files/lq_sequences/calendar/ ./outputs/calendar_BasicVSR\n","\n","# Check whether video frames are saved\n","!ls ./outputs/calendar_BasicVSR"]},{"cell_type":"markdown","metadata":{"id":"Rf3LW57qMHXb"},"source":["## Test on a pre-defined dataset using the configuration file\n","\n","The above demos provide an easy way to perform inference on a single image or video sequence. If you want to perform inference on a set of images or sequences, you can make use of the configuration files located in `./configs`.\n"," \n","Existing configuration files allow you to perform inference on common datasets, such as `Set5` in image super-resolution and `REDS4` in video super-resolution. You can use the following command:\n","\n","1. `CONFIG_FILE`: The configuration file corresponding to the restorer and dataset you want to use\n","2. `CHECKPOINT_FILE`: The path to the checkpoint of the pre-trained model.\n","3. `GPU_NUM`: Number of GPUs used for test. \n","4. `RESULT_FILE`: The path to the output result pickle file. (Optional)\n","5. `IMAGE_SAVE_PATH`: The location where you want to store the output image. (Optional)\n","\n","```\n","# single-gpu testing\n","python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} [--out ${RESULT_FILE}] [--save-path ${IMAGE_SAVE_PATH}]\n","\n","# multi-gpu testing\n","./tools/dist_test.sh ${CONFIG_FILE} ${CHECKPOINT_FILE} ${GPU_NUM} [--out ${RESULT_FILE}] [--save-path ${IMAGE_SAVE_PATH}]\n","```\n","What you need to do is to modify the `lq_folder` and `gt_folder` in the configuration file:\n","```\n","test=dict(\n","    type=val_dataset_type,\n","    lq_folder='data/val_set5/Set5_bicLRx4',\n","    gt_folder='data/val_set5/Set5',\n","    pipeline=test_pipeline,\n","    scale=scale,\n","    filename_tmpl='{}'))\n","```\n","\n","**Note**: Some dataset type (e.g. `SRREDSDataset`) requires an annotation file specifying the details of the dataset. Please refer to the corresponding file\n","in `./mmedit/dataset/` for more details. \n","\n","---\n","\n","The following is the command for SRCNN. For other models, you can simply change the paths to the configuration file and pretrained model. \n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":14095,"status":"ok","timestamp":1625140927462,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"tClgIYgcbbVg","outputId":"c37ec2de-e1c9-42ae-ed9b-31009d48ae64"},"outputs":[{"name":"stdout","output_type":"stream","text":["Traceback (most recent call last):\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 51, in build_from_cfg\n","    return obj_cls(**args)\n","  File \"/content/mmediting/mmedit/datasets/sr_folder_dataset.py\", line 62, in __init__\n","    self.data_infos = self.load_annotations()\n","  File \"/content/mmediting/mmedit/datasets/sr_folder_dataset.py\", line 73, in load_annotations\n","    lq_paths = self.scan_folder(self.lq_folder)\n","  File \"/content/mmediting/mmedit/datasets/base_sr_dataset.py\", line 39, in scan_folder\n","    images = list(scandir(path, suffix=IMG_EXTENSIONS, recursive=True))\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/path.py\", line 63, in _scandir\n","    for entry in os.scandir(dir_path):\n","FileNotFoundError: [Errno 2] No such file or directory: 'data/val_set5/Set5_bicLRx4'\n","\n","During handling of the above exception, another exception occurred:\n","\n","Traceback (most recent call last):\n","  File \"tools/test.py\", line 136, in <module>\n","    main()\n","  File \"tools/test.py\", line 73, in main\n","    dataset = build_dataset(cfg.data.test)\n","  File \"/content/mmediting/mmedit/datasets/builder.py\", line 80, in build_dataset\n","    dataset = build_from_cfg(cfg, DATASETS, default_args)\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 54, in build_from_cfg\n","    raise type(e)(f'{obj_cls.__name__}: {e}')\n","FileNotFoundError: SRFolderDataset: [Errno 2] No such file or directory: 'data/val_set5/Set5_bicLRx4'\n","Traceback (most recent call last):\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 51, in build_from_cfg\n","    return obj_cls(**args)\n","  File \"/content/mmediting/mmedit/datasets/sr_folder_dataset.py\", line 62, in __init__\n","    self.data_infos = self.load_annotations()\n","  File \"/content/mmediting/mmedit/datasets/sr_folder_dataset.py\", line 73, in load_annotations\n","    lq_paths = self.scan_folder(self.lq_folder)\n","  File \"/content/mmediting/mmedit/datasets/base_sr_dataset.py\", line 39, in scan_folder\n","    images = list(scandir(path, suffix=IMG_EXTENSIONS, recursive=True))\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/path.py\", line 63, in _scandir\n","    for entry in os.scandir(dir_path):\n","FileNotFoundError: [Errno 2] No such file or directory: 'data/val_set5/Set5_bicLRx4'\n","\n","During handling of the above exception, another exception occurred:\n","\n","Traceback (most recent call last):\n","  File \"./tools/test.py\", line 136, in <module>\n","    main()\n","  File \"./tools/test.py\", line 73, in main\n","    dataset = build_dataset(cfg.data.test)\n","  File \"/content/mmediting/mmedit/datasets/builder.py\", line 80, in build_dataset\n","    dataset = build_from_cfg(cfg, DATASETS, default_args)\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 54, in build_from_cfg\n","    raise type(e)(f'{obj_cls.__name__}: {e}')\n","FileNotFoundError: SRFolderDataset: [Errno 2] No such file or directory: 'data/val_set5/Set5_bicLRx4'\n","Traceback (most recent call last):\n","  File \"/usr/lib/python3.7/runpy.py\", line 193, in _run_module_as_main\n","    \"__main__\", mod_spec)\n","  File \"/usr/lib/python3.7/runpy.py\", line 85, in _run_code\n","    exec(code, run_globals)\n","  File \"/usr/local/lib/python3.7/dist-packages/torch/distributed/launch.py\", line 260, in <module>\n","    main()\n","  File \"/usr/local/lib/python3.7/dist-packages/torch/distributed/launch.py\", line 256, in main\n","    cmd=cmd)\n","subprocess.CalledProcessError: Command '['/usr/bin/python3', '-u', './tools/test.py', '--local_rank=0', './configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py', 'https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth', '--launcher', 'pytorch', '--save-path', './outputs/']' returned non-zero exit status 1.\n"]}],"source":["# single-gpu\n","!python tools/test.py ./configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth --save-path ./outputs/\n","\n","# multi-gpu testing\n","!./tools/dist_test.sh ./configs/restorers/srcnn/srcnn_x4k915_g1_1000k_div2k.py https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth 1 --save-path ./outputs/"]},{"cell_type":"markdown","metadata":{"id":"KWKVyeEQelh3"},"source":["## Test on your own datasets\n","\n","When you want to test on your own datasets, you need to modify `test_dataset_type` in addition to the dataset paths. \n","\n","- For image super-resolution, you need to use `SRFolderDataset`\n","- For sliding-window framework in video super-resolution (e.g. EDVR, TDAN), you need to use `SRFolderVideoDataset`.\n","- For recurrent framework in video super-resolution (e.g. BasicVSR, IconVSR), you need to use `SRFolderMultipleGTDataset`.\n","\n","These dataset types assume that all images/sequences in the specified directory are used for test. The folder structures should be\n","```\n","| lq_root\n","  | sequence_1\n","    | 000.png\n","    | 001.png\n","    | ...\n","  | sequence_2\n","    | 000.png\n","    | ...\n","  | ...\n","| gt_root\n","  | sequence_1\n","    | 000.png\n","    | 001.png\n","    |...\n","  | sequence_2\n","    | 000.png\n","    | ...\n","  | ...\n","```\n","We will use **SRCNN**, **EDVR**, **BasicVSR** as examples. Please pay attention to the settings of `test_dataset_type` and `data['test']`. "]},{"cell_type":"markdown","metadata":{"id":"0p2rP8jV_dL1"},"source":["**SRCNN**"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":8729,"status":"ok","timestamp":1625140936180,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"4kEev4wVIq_L","outputId":"8026ed73-f781-4eb2-bb80-d3446bd131df"},"outputs":[{"name":"stdout","output_type":"stream","text":["Use load_from_http loader\n","[>>] 5/5, 8.6 task/s, elapsed: 1s, ETA:     0s\n","Eval-PSNR: 28.433974369836108\n","Eval-SSIM: 0.8099053586583066\n","baby.png  bird.png  butterfly.png  head.png  woman.png\n"]}],"source":["# single-gpu (Colab has one GPU only)\n","!python tools/test.py ./demo_files/demo_config_SRCNN.py https://download.openmmlab.com/mmediting/restorers/srcnn/srcnn_x4k915_1x16_1000k_div2k_20200608-4186f232.pth --save-path ./outputs/testset_SRCNN\n","\n","# Check the output folder\n","!ls ./outputs/testset_SRCNN"]},{"cell_type":"markdown","metadata":{"id":"RONzjTTU_gem"},"source":["**EDVR**"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":19671,"status":"ok","timestamp":1625140955813,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"vL8WOWXY0fNJ","outputId":"dc2a8f81-9bef-4ad4-c5b2-c6f124e6b113"},"outputs":[{"name":"stdout","output_type":"stream","text":["Use load_from_http loader\n","[>>] 22/22, 2.0 task/s, elapsed: 11s, ETA:     0s\n","Eval-PSNR: 23.89569862011228\n","Eval-SSIM: 0.7667098470108678\n","calendar  city\n","00000000.png  00000003.png  00000006.png  00000009.png\n","00000001.png  00000004.png  00000007.png  00000010.png\n","00000002.png  00000005.png  00000008.png\n"]}],"source":["# single-gpu (Colab has one GPU only)\n","!python tools/test.py ./demo_files/demo_config_EDVR.py https://download.openmmlab.com/mmediting/restorers/edvr/edvrm_wotsa_x4_8x4_600k_reds_20200522-0570e567.pth --save-path ./outputs/testset_EDVR\n","\n","# # Check the output folder\n","!ls ./outputs/testset_EDVR\n","!ls ./outputs/testset_EDVR/city"]},{"cell_type":"markdown","metadata":{"id":"5Tc7F-l5_i1e"},"source":["**BasicVSR**"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":20220,"status":"ok","timestamp":1625140976026,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"jpW5GWC74Yvu","outputId":"7ba02a32-d4ec-40b2-8108-ef0729b62147"},"outputs":[{"name":"stdout","output_type":"stream","text":["2021-07-01 12:02:07,780 - mmedit - INFO - Use load_from_http loader\n","Use load_from_http loader\n","The model and loaded state dict do not match exactly\n","\n","missing keys in source state_dict: step_counter\n","\n","[>>] 2/2, 0.2 task/s, elapsed: 11s, ETA:     0s\n","Eval-PSNR: 24.195768601433734\n","Eval-SSIM: 0.7828541339512978\n","calendar  city\n","00000000.png  00000003.png  00000006.png  00000009.png\n","00000001.png  00000004.png  00000007.png  00000010.png\n","00000002.png  00000005.png  00000008.png\n"]}],"source":["# single-gpu (Colab has one GPU only)\n","!python tools/test.py ./demo_files/demo_config_BasicVSR.py https://download.openmmlab.com/mmediting/restorers/basicvsr/basicvsr_reds4_20120409-0e599677.pth --save-path ./outputs/testset_BasicVSR\n","\n","# # Check the output folder\n","!ls ./outputs/testset_BasicVSR\n","!ls ./outputs/testset_BasicVSR/calendar"]},{"cell_type":"markdown","metadata":{"id":"4DQxNL8BhI0y"},"source":["## Train a restorer on a pre-defined dataset\n","\n","MMEditing uses distributed training. The following command can be used for training. If you want to train on the pre-defined datasets specified in our configuration file, you can simply run the following command.\n","\n","```\n","./tools/dist_train.sh ${CONFIG_FILE} ${GPU_NUM} [optional arguments]\n","```\n","\n","For more details about the optional arguments, please refer to `tools/train.py`.\n","\n","---\n","\n","Here is an example using EDVR.\n"]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":9337,"status":"ok","timestamp":1625140985357,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"s-hOnSF6ItQM","outputId":"e40e960a-29e1-43e8-b922-5e08c4e98afe"},"outputs":[{"name":"stdout","output_type":"stream","text":["2021-07-01 12:02:31,961 - mmedit - INFO - Environment info:\n","------------------------------------------------------------\n","sys.platform: linux\n","Python: 3.7.10 (default, May  3 2021, 02:48:31) [GCC 7.5.0]\n","CUDA available: True\n","GPU 0: Tesla T4\n","CUDA_HOME: /usr/local/cuda\n","NVCC: Build cuda_11.0_bu.TC445_37.28845127_0\n","GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0\n","PyTorch: 1.7.0+cu110\n","PyTorch compiling details: PyTorch built with:\n","  - GCC 7.3\n","  - C++ Version: 201402\n","  - Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications\n","  - Intel(R) MKL-DNN v1.6.0 (Git Hash 5ef631a030a6f73131c77892041042805a06064f)\n","  - OpenMP 201511 (a.k.a. OpenMP 4.5)\n","  - NNPACK is enabled\n","  - CPU capability usage: AVX2\n","  - CUDA Runtime 11.0\n","  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80\n","  - CuDNN 8.0.4\n","  - Magma 2.5.2\n","  - Build settings: BLAS=MKL, BUILD_TYPE=Release, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DUSE_VULKAN_WRAPPER -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, USE_CUDA=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, \n","\n","TorchVision: 0.8.0\n","OpenCV: 4.1.2\n","MMCV: 1.3.5\n","MMCV Compiler: GCC 7.3\n","MMCV CUDA Compiler: 11.0\n","MMEditing: 0.8.0+7f4fa79\n","------------------------------------------------------------\n","\n","2021-07-01 12:02:31,961 - mmedit - INFO - Distributed training: True\n","2021-07-01 12:02:31,961 - mmedit - INFO - mmedit Version: 0.8.0\n","2021-07-01 12:02:31,961 - mmedit - INFO - Config:\n","/content/mmediting/configs/restorers/edvr/edvrm_wotsa_x4_g8_600k_reds.py\n","exp_name = 'edvrm_wotsa_x4_g8_600k_reds'\n","\n","# model settings\n","model = dict(\n","    type='EDVR',\n","    generator=dict(\n","        type='EDVRNet',\n","        in_channels=3,\n","        out_channels=3,\n","        mid_channels=64,\n","        num_frames=5,\n","        deform_groups=8,\n","        num_blocks_extraction=5,\n","        num_blocks_reconstruction=10,\n","        center_frame_idx=2,\n","        with_tsa=False),\n","    pixel_loss=dict(type='CharbonnierLoss', loss_weight=1.0, reduction='sum'))\n","# model training and testing settings\n","train_cfg = None\n","test_cfg = dict(metrics=['PSNR'], crop_border=0)\n","\n","# dataset settings\n","train_dataset_type = 'SRREDSDataset'\n","val_dataset_type = 'SRREDSDataset'\n","train_pipeline = [\n","    dict(type='GenerateFrameIndices', interval_list=[1], frames_per_clip=99),\n","    dict(type='TemporalReverse', keys='lq_path', reverse_ratio=0),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(type='PairedRandomCrop', gt_patch_size=256),\n","    dict(\n","        type='Flip', keys=['lq', 'gt'], flip_ratio=0.5,\n","        direction='horizontal'),\n","    dict(type='Flip', keys=['lq', 'gt'], flip_ratio=0.5, direction='vertical'),\n","    dict(type='RandomTransposeHW', keys=['lq', 'gt'], transpose_ratio=0.5),\n","    dict(type='Collect', keys=['lq', 'gt'], meta_keys=['lq_path', 'gt_path']),\n","    dict(type='FramesToTensor', keys=['lq', 'gt'])\n","]\n","\n","test_pipeline = [\n","    dict(type='GenerateFrameIndiceswithPadding', padding='reflection_circle'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(\n","        type='Collect',\n","        keys=['lq', 'gt'],\n","        meta_keys=['lq_path', 'gt_path', 'key']),\n","    dict(type='FramesToTensor', keys=['lq', 'gt'])\n","]\n","\n","data = dict(\n","    workers_per_gpu=4,\n","    train_dataloader=dict(samples_per_gpu=4, drop_last=True),\n","    val_dataloader=dict(samples_per_gpu=1),\n","    test_dataloader=dict(samples_per_gpu=1),\n","    train=dict(\n","        type='RepeatDataset',\n","        times=1000,\n","        dataset=dict(\n","            type=train_dataset_type,\n","            lq_folder='data/REDS/train_sharp_bicubic/X4',\n","            gt_folder='data/REDS/train_sharp',\n","            ann_file='data/REDS/meta_info_REDS_GT.txt',\n","            num_input_frames=5,\n","            pipeline=train_pipeline,\n","            scale=4,\n","            val_partition='REDS4',\n","            test_mode=False)),\n","    val=dict(\n","        type=val_dataset_type,\n","        lq_folder='data/REDS/train_sharp_bicubic/X4',\n","        gt_folder='data/REDS/train_sharp',\n","        ann_file='data/REDS/meta_info_REDS_GT.txt',\n","        num_input_frames=5,\n","        pipeline=test_pipeline,\n","        scale=4,\n","        val_partition='REDS4',\n","        test_mode=True),\n","    test=dict(\n","        type=val_dataset_type,\n","        lq_folder='data/REDS/train_sharp_bicubic/X4',\n","        gt_folder='data/REDS/train_sharp',\n","        ann_file='data/REDS/meta_info_REDS_GT.txt',\n","        num_input_frames=5,\n","        pipeline=test_pipeline,\n","        scale=4,\n","        val_partition='REDS4',\n","        test_mode=True),\n",")\n","\n","# optimizer\n","optimizers = dict(generator=dict(type='Adam', lr=4e-4, betas=(0.9, 0.999)))\n","\n","# learning policy\n","total_iters = 600000\n","lr_config = dict(\n","    policy='CosineRestart',\n","    by_epoch=False,\n","    periods=[150000, 150000, 150000, 150000],\n","    restart_weights=[1, 0.5, 0.5, 0.5],\n","    min_lr=1e-7)\n","\n","checkpoint_config = dict(interval=5000, save_optimizer=True, by_epoch=False)\n","# remove gpu_collect=True in non distributed training\n","evaluation = dict(interval=50000, save_image=False, gpu_collect=True)\n","log_config = dict(\n","    interval=100,\n","    hooks=[\n","        dict(type='TextLoggerHook', by_epoch=False),\n","        dict(type='TensorboardLoggerHook'),\n","        # dict(type='PaviLoggerHook', init_kwargs=dict(project='mmedit-sr'))\n","    ])\n","visual_config = None\n","\n","# runtime settings\n","dist_params = dict(backend='nccl')\n","log_level = 'INFO'\n","work_dir = f'./work_dirs/{exp_name}'\n","load_from = None\n","resume_from = None\n","workflow = [('train', 1)]\n","\n","Traceback (most recent call last):\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 51, in build_from_cfg\n","    return obj_cls(**args)\n","  File \"/content/mmediting/mmedit/datasets/sr_reds_dataset.py\", line 54, in __init__\n","    self.data_infos = self.load_annotations()\n","  File \"/content/mmediting/mmedit/datasets/sr_reds_dataset.py\", line 63, in load_annotations\n","    with open(self.ann_file, 'r') as fin:\n","FileNotFoundError: [Errno 2] No such file or directory: 'data/REDS/meta_info_REDS_GT.txt'\n","\n","During handling of the above exception, another exception occurred:\n","\n","Traceback (most recent call last):\n","  File \"./tools/train.py\", line 145, in <module>\n","    main()\n","  File \"./tools/train.py\", line 111, in main\n","    datasets = [build_dataset(cfg.data.train)]\n","  File \"/content/mmediting/mmedit/datasets/builder.py\", line 76, in build_dataset\n","    build_dataset(cfg['dataset'], default_args), cfg['times'])\n","  File \"/content/mmediting/mmedit/datasets/builder.py\", line 80, in build_dataset\n","    dataset = build_from_cfg(cfg, DATASETS, default_args)\n","  File \"/usr/local/lib/python3.7/dist-packages/mmcv/utils/registry.py\", line 54, in build_from_cfg\n","    raise type(e)(f'{obj_cls.__name__}: {e}')\n","FileNotFoundError: SRREDSDataset: [Errno 2] No such file or directory: 'data/REDS/meta_info_REDS_GT.txt'\n","Traceback (most recent call last):\n","  File \"/usr/lib/python3.7/runpy.py\", line 193, in _run_module_as_main\n","    \"__main__\", mod_spec)\n","  File \"/usr/lib/python3.7/runpy.py\", line 85, in _run_code\n","    exec(code, run_globals)\n","  File \"/usr/local/lib/python3.7/dist-packages/torch/distributed/launch.py\", line 260, in <module>\n","    main()\n","  File \"/usr/local/lib/python3.7/dist-packages/torch/distributed/launch.py\", line 256, in main\n","    cmd=cmd)\n","subprocess.CalledProcessError: Command '['/usr/bin/python3', '-u', './tools/train.py', '--local_rank=0', './configs/restorers/edvr/edvrm_wotsa_x4_g8_600k_reds.py', '--launcher', 'pytorch']' returned non-zero exit status 1.\n"]}],"source":["!./tools/dist_train.sh ./configs/restorers/edvr/edvrm_wotsa_x4_g8_600k_reds.py 1"]},{"cell_type":"markdown","metadata":{"id":"b0VfQkQQjg8N"},"source":["## Train a restorer on your own datasets\n","\n","Similar to the case when you want to test on your own datasets, you need to modify `train_dataset_type`. The dataset type you need is identical:\n","\n","- For image super-resolution, you need to use `SRFolderDataset`\n","- For sliding-window framework in video super-resolution (e.g. EDVR, TDAN), you need to use `SRFolderVideoDataset`.\n","- For recurrent framework in video super-resolution (e.g. BasicVSR, IconVSR), you need to use `SRFolderMultipleGTDataset`.\n","\n","After you modified the dataset type and the data path. You are all set to go."]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":128384,"status":"ok","timestamp":1625141113733,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"liGEKJpbIoXZ","outputId":"84e1502e-e2cb-458f-c7c5-e4b401e570b7"},"outputs":[{"name":"stdout","output_type":"stream","text":["2021-07-01 12:02:41,185 - mmedit - INFO - Environment info:\n","------------------------------------------------------------\n","sys.platform: linux\n","Python: 3.7.10 (default, May  3 2021, 02:48:31) [GCC 7.5.0]\n","CUDA available: True\n","GPU 0: Tesla T4\n","CUDA_HOME: /usr/local/cuda\n","NVCC: Build cuda_11.0_bu.TC445_37.28845127_0\n","GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0\n","PyTorch: 1.7.0+cu110\n","PyTorch compiling details: PyTorch built with:\n","  - GCC 7.3\n","  - C++ Version: 201402\n","  - Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications\n","  - Intel(R) MKL-DNN v1.6.0 (Git Hash 5ef631a030a6f73131c77892041042805a06064f)\n","  - OpenMP 201511 (a.k.a. OpenMP 4.5)\n","  - NNPACK is enabled\n","  - CPU capability usage: AVX2\n","  - CUDA Runtime 11.0\n","  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80\n","  - CuDNN 8.0.4\n","  - Magma 2.5.2\n","  - Build settings: BLAS=MKL, BUILD_TYPE=Release, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DUSE_VULKAN_WRAPPER -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, USE_CUDA=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, \n","\n","TorchVision: 0.8.0\n","OpenCV: 4.1.2\n","MMCV: 1.3.5\n","MMCV Compiler: GCC 7.3\n","MMCV CUDA Compiler: 11.0\n","MMEditing: 0.8.0+7f4fa79\n","------------------------------------------------------------\n","\n","2021-07-01 12:02:41,185 - mmedit - INFO - Distributed training: True\n","2021-07-01 12:02:41,185 - mmedit - INFO - mmedit Version: 0.8.0\n","2021-07-01 12:02:41,185 - mmedit - INFO - Config:\n","/content/mmediting/demo_files/demo_config_SRCNN.py\n","exp_name = 'srcnn_demo'\n","\n","scale = 4\n","# model settings\n","model = dict(\n","    type='BasicRestorer',\n","    generator=dict(\n","        type='SRCNN',\n","        channels=(3, 64, 32, 3),\n","        kernel_sizes=(9, 1, 5),\n","        upscale_factor=scale),\n","    pixel_loss=dict(type='L1Loss', loss_weight=1.0, reduction='mean'))\n","# model training and testing settings\n","train_cfg = None\n","test_cfg = dict(metrics=['PSNR', 'SSIM'], crop_border=scale)\n","\n","# dataset settings\n","train_dataset_type = 'SRFolderDataset'\n","val_dataset_type = 'SRFolderDataset'\n","train_pipeline = [\n","    dict(\n","        type='LoadImageFromFile',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFile',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(type='PairedRandomCrop', gt_patch_size=128),\n","    dict(\n","        type='Flip', keys=['lq', 'gt'], flip_ratio=0.5,\n","        direction='horizontal'),\n","    dict(type='Flip', keys=['lq', 'gt'], flip_ratio=0.5, direction='vertical'),\n","    dict(type='RandomTransposeHW', keys=['lq', 'gt'], transpose_ratio=0.5),\n","    dict(type='Collect', keys=['lq', 'gt'], meta_keys=['lq_path', 'gt_path']),\n","    dict(type='ImageToTensor', keys=['lq', 'gt'])\n","]\n","test_pipeline = [\n","    dict(\n","        type='LoadImageFromFile',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFile',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(type='Collect', keys=['lq', 'gt'], meta_keys=['lq_path', 'lq_path']),\n","    dict(type='ImageToTensor', keys=['lq', 'gt'])\n","]\n","\n","data = dict(\n","    workers_per_gpu=8,\n","    train_dataloader=dict(samples_per_gpu=16, drop_last=True),\n","    val_dataloader=dict(samples_per_gpu=1),\n","    test_dataloader=dict(samples_per_gpu=1),\n","    train=dict(\n","        type='RepeatDataset',\n","        times=1000,\n","        dataset=dict(\n","            type=train_dataset_type,\n","            lq_folder='./demo_files/lq_images',\n","            gt_folder='./demo_files/gt_images',\n","            pipeline=train_pipeline,\n","            scale=scale)),\n","    val=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_images',\n","        gt_folder='./demo_files/gt_images',\n","        pipeline=test_pipeline,\n","        scale=scale,\n","        filename_tmpl='{}'),\n","    test=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_images',\n","          gt_folder='./demo_files/gt_images',\n","        pipeline=test_pipeline,\n","        scale=scale,\n","        filename_tmpl='{}'))\n","\n","# optimizer\n","optimizers = dict(generator=dict(type='Adam', lr=2e-4, betas=(0.9, 0.999)))\n","\n","# learning policy\n","total_iters = 100\n","lr_config = dict(\n","    policy='CosineRestart',\n","    by_epoch=False,\n","    periods=[250000, 250000, 250000, 250000],\n","    restart_weights=[1, 1, 1, 1],\n","    min_lr=1e-7)\n","\n","checkpoint_config = dict(interval=5000, save_optimizer=True, by_epoch=False)\n","evaluation = dict(interval=50, save_image=True, gpu_collect=True)\n","log_config = dict(\n","    interval=1,\n","    hooks=[\n","        dict(type='TextLoggerHook', by_epoch=False),\n","        dict(type='TensorboardLoggerHook'),\n","        # dict(type='PaviLoggerHook', init_kwargs=dict(project='mmedit-sr'))\n","    ])\n","visual_config = None\n","\n","# runtime settings\n","dist_params = dict(backend='nccl')\n","log_level = 'INFO'\n","work_dir = f'./experiments/{exp_name}'\n","load_from = None\n","resume_from = None\n","workflow = [('train', 1)]\n","\n","2021-07-01 12:02:41,192 - mmedit - INFO - Start running, host: root@fce870c778f5, work_dir: /content/mmediting/experiments/srcnn_demo\n","2021-07-01 12:02:41,192 - mmedit - INFO - workflow: [('train', 1)], max: 100 iters\n","2021-07-01 12:02:41.529307: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcudart.so.11.0\n","2021-07-01 12:03:18,631 - mmedit - INFO - Iter [1/100]\tlr_generator: 2.000e-04, eta: 0:57:01, time: 34.560, data_time: 34.446, memory: 586, loss_pix: 0.3999, loss: 0.3999\n","2021-07-01 12:03:18,712 - mmedit - INFO - Iter [2/100]\tlr_generator: 2.000e-04, eta: 0:28:16, time: 0.068, data_time: 0.020, memory: 586, loss_pix: 0.4382, loss: 0.4382\n","INFO:mmedit:Iter [2/100]\tlr_generator: 2.000e-04, eta: 0:28:16, time: 0.068, data_time: 0.020, memory: 586, loss_pix: 0.4382, loss: 0.4382\n","2021-07-01 12:03:18,764 - mmedit - INFO - Iter [3/100]\tlr_generator: 2.000e-04, eta: 0:18:41, time: 0.053, data_time: 0.027, memory: 586, loss_pix: 0.5043, loss: 0.5043\n","INFO:mmedit:Iter [3/100]\tlr_generator: 2.000e-04, eta: 0:18:41, time: 0.053, data_time: 0.027, memory: 586, loss_pix: 0.5043, loss: 0.5043\n","2021-07-01 12:03:18,840 - mmedit - INFO - Iter [4/100]\tlr_generator: 2.000e-04, eta: 0:13:54, time: 0.076, data_time: 0.026, memory: 586, loss_pix: 0.4364, loss: 0.4364\n","INFO:mmedit:Iter [4/100]\tlr_generator: 2.000e-04, eta: 0:13:54, time: 0.076, data_time: 0.026, memory: 586, loss_pix: 0.4364, loss: 0.4364\n","2021-07-01 12:03:18,916 - mmedit - INFO - Iter [5/100]\tlr_generator: 2.000e-04, eta: 0:11:01, time: 0.085, data_time: 0.028, memory: 586, loss_pix: 0.3853, loss: 0.3853\n","INFO:mmedit:Iter [5/100]\tlr_generator: 2.000e-04, eta: 0:11:01, time: 0.085, data_time: 0.028, memory: 586, loss_pix: 0.3853, loss: 0.3853\n","2021-07-01 12:03:18,956 - mmedit - INFO - Iter [6/100]\tlr_generator: 2.000e-04, eta: 0:09:06, time: 0.041, data_time: 0.017, memory: 586, loss_pix: 0.4315, loss: 0.4315\n","INFO:mmedit:Iter [6/100]\tlr_generator: 2.000e-04, eta: 0:09:06, time: 0.041, data_time: 0.017, memory: 586, loss_pix: 0.4315, loss: 0.4315\n","2021-07-01 12:03:19,012 - mmedit - INFO - Iter [7/100]\tlr_generator: 2.000e-04, eta: 0:07:44, time: 0.056, data_time: 0.016, memory: 586, loss_pix: 0.4003, loss: 0.4003\n","INFO:mmedit:Iter [7/100]\tlr_generator: 2.000e-04, eta: 0:07:44, time: 0.056, data_time: 0.016, memory: 586, loss_pix: 0.4003, loss: 0.4003\n","2021-07-01 12:03:19,070 - mmedit - INFO - Iter [8/100]\tlr_generator: 2.000e-04, eta: 0:06:42, time: 0.057, data_time: 0.016, memory: 586, loss_pix: 0.3766, loss: 0.3766\n","INFO:mmedit:Iter [8/100]\tlr_generator: 2.000e-04, eta: 0:06:42, time: 0.057, data_time: 0.016, memory: 586, loss_pix: 0.3766, loss: 0.3766\n","2021-07-01 12:03:19,142 - mmedit - INFO - Iter [9/100]\tlr_generator: 2.000e-04, eta: 0:05:54, time: 0.064, data_time: 0.026, memory: 586, loss_pix: 0.3721, loss: 0.3721\n","INFO:mmedit:Iter [9/100]\tlr_generator: 2.000e-04, eta: 0:05:54, time: 0.064, data_time: 0.026, memory: 586, loss_pix: 0.3721, loss: 0.3721\n","2021-07-01 12:03:19,212 - mmedit - INFO - Iter [10/100]\tlr_generator: 2.000e-04, eta: 0:05:16, time: 0.079, data_time: 0.027, memory: 586, loss_pix: 0.3314, loss: 0.3314\n","INFO:mmedit:Iter [10/100]\tlr_generator: 2.000e-04, eta: 0:05:16, time: 0.079, data_time: 0.027, memory: 586, loss_pix: 0.3314, loss: 0.3314\n","2021-07-01 12:03:19,261 - mmedit - INFO - Iter [11/100]\tlr_generator: 2.000e-04, eta: 0:04:44, time: 0.054, data_time: 0.016, memory: 586, loss_pix: 0.3249, loss: 0.3249\n","INFO:mmedit:Iter [11/100]\tlr_generator: 2.000e-04, eta: 0:04:44, time: 0.054, data_time: 0.016, memory: 586, loss_pix: 0.3249, loss: 0.3249\n","2021-07-01 12:03:19,302 - mmedit - INFO - Iter [12/100]\tlr_generator: 2.000e-04, eta: 0:04:18, time: 0.041, data_time: 0.012, memory: 586, loss_pix: 0.2947, loss: 0.2947\n","INFO:mmedit:Iter [12/100]\tlr_generator: 2.000e-04, eta: 0:04:18, time: 0.041, data_time: 0.012, memory: 586, loss_pix: 0.2947, loss: 0.2947\n","2021-07-01 12:03:19,357 - mmedit - INFO - Iter [13/100]\tlr_generator: 2.000e-04, eta: 0:03:56, time: 0.054, data_time: 0.012, memory: 586, loss_pix: 0.2634, loss: 0.2634\n","INFO:mmedit:Iter [13/100]\tlr_generator: 2.000e-04, eta: 0:03:56, time: 0.054, data_time: 0.012, memory: 586, loss_pix: 0.2634, loss: 0.2634\n","2021-07-01 12:03:19,419 - mmedit - INFO - Iter [14/100]\tlr_generator: 2.000e-04, eta: 0:03:37, time: 0.059, data_time: 0.016, memory: 586, loss_pix: 0.2101, loss: 0.2101\n","INFO:mmedit:Iter [14/100]\tlr_generator: 2.000e-04, eta: 0:03:37, time: 0.059, data_time: 0.016, memory: 586, loss_pix: 0.2101, loss: 0.2101\n","2021-07-01 12:03:19,473 - mmedit - INFO - Iter [15/100]\tlr_generator: 2.000e-04, eta: 0:03:20, time: 0.055, data_time: 0.025, memory: 586, loss_pix: 0.2165, loss: 0.2165\n","INFO:mmedit:Iter [15/100]\tlr_generator: 2.000e-04, eta: 0:03:20, time: 0.055, data_time: 0.025, memory: 586, loss_pix: 0.2165, loss: 0.2165\n","2021-07-01 12:03:19,538 - mmedit - INFO - Iter [16/100]\tlr_generator: 2.000e-04, eta: 0:03:06, time: 0.072, data_time: 0.024, memory: 586, loss_pix: 0.1866, loss: 0.1866\n","INFO:mmedit:Iter [16/100]\tlr_generator: 2.000e-04, eta: 0:03:06, time: 0.072, data_time: 0.024, memory: 586, loss_pix: 0.1866, loss: 0.1866\n","2021-07-01 12:03:19,603 - mmedit - INFO - Iter [17/100]\tlr_generator: 2.000e-04, eta: 0:02:53, time: 0.060, data_time: 0.019, memory: 586, loss_pix: 0.1623, loss: 0.1623\n","INFO:mmedit:Iter [17/100]\tlr_generator: 2.000e-04, eta: 0:02:53, time: 0.060, data_time: 0.019, memory: 586, loss_pix: 0.1623, loss: 0.1623\n","2021-07-01 12:03:19,657 - mmedit - INFO - Iter [18/100]\tlr_generator: 2.000e-04, eta: 0:02:42, time: 0.055, data_time: 0.013, memory: 586, loss_pix: 0.1397, loss: 0.1397\n","INFO:mmedit:Iter [18/100]\tlr_generator: 2.000e-04, eta: 0:02:42, time: 0.055, data_time: 0.013, memory: 586, loss_pix: 0.1397, loss: 0.1397\n","2021-07-01 12:03:19,716 - mmedit - INFO - Iter [19/100]\tlr_generator: 2.000e-04, eta: 0:02:31, time: 0.055, data_time: 0.018, memory: 586, loss_pix: 0.1304, loss: 0.1304\n","INFO:mmedit:Iter [19/100]\tlr_generator: 2.000e-04, eta: 0:02:31, time: 0.055, data_time: 0.018, memory: 586, loss_pix: 0.1304, loss: 0.1304\n","2021-07-01 12:03:19,772 - mmedit - INFO - Iter [20/100]\tlr_generator: 2.000e-04, eta: 0:02:22, time: 0.058, data_time: 0.021, memory: 586, loss_pix: 0.1107, loss: 0.1107\n","INFO:mmedit:Iter [20/100]\tlr_generator: 2.000e-04, eta: 0:02:22, time: 0.058, data_time: 0.021, memory: 586, loss_pix: 0.1107, loss: 0.1107\n","2021-07-01 12:03:19,834 - mmedit - INFO - Iter [21/100]\tlr_generator: 2.000e-04, eta: 0:02:14, time: 0.064, data_time: 0.018, memory: 586, loss_pix: 0.1401, loss: 0.1401\n","INFO:mmedit:Iter [21/100]\tlr_generator: 2.000e-04, eta: 0:02:14, time: 0.064, data_time: 0.018, memory: 586, loss_pix: 0.1401, loss: 0.1401\n","2021-07-01 12:03:19,877 - mmedit - INFO - Iter [22/100]\tlr_generator: 2.000e-04, eta: 0:02:06, time: 0.049, data_time: 0.013, memory: 586, loss_pix: 0.1361, loss: 0.1361\n","INFO:mmedit:Iter [22/100]\tlr_generator: 2.000e-04, eta: 0:02:06, time: 0.049, data_time: 0.013, memory: 586, loss_pix: 0.1361, loss: 0.1361\n","2021-07-01 12:03:19,947 - mmedit - INFO - Iter [23/100]\tlr_generator: 2.000e-04, eta: 0:02:00, time: 0.059, data_time: 0.019, memory: 586, loss_pix: 0.1441, loss: 0.1441\n","INFO:mmedit:Iter [23/100]\tlr_generator: 2.000e-04, eta: 0:02:00, time: 0.059, data_time: 0.019, memory: 586, loss_pix: 0.1441, loss: 0.1441\n","2021-07-01 12:03:20,014 - mmedit - INFO - Iter [24/100]\tlr_generator: 2.000e-04, eta: 0:01:53, time: 0.068, data_time: 0.022, memory: 586, loss_pix: 0.1474, loss: 0.1474\n","INFO:mmedit:Iter [24/100]\tlr_generator: 2.000e-04, eta: 0:01:53, time: 0.068, data_time: 0.022, memory: 586, loss_pix: 0.1474, loss: 0.1474\n","2021-07-01 12:03:20,068 - mmedit - INFO - Iter [25/100]\tlr_generator: 2.000e-04, eta: 0:01:48, time: 0.061, data_time: 0.024, memory: 586, loss_pix: 0.1345, loss: 0.1345\n","INFO:mmedit:Iter [25/100]\tlr_generator: 2.000e-04, eta: 0:01:48, time: 0.061, data_time: 0.024, memory: 586, loss_pix: 0.1345, loss: 0.1345\n","2021-07-01 12:03:20,124 - mmedit - INFO - Iter [26/100]\tlr_generator: 2.000e-04, eta: 0:01:42, time: 0.052, data_time: 0.017, memory: 586, loss_pix: 0.1357, loss: 0.1357\n","INFO:mmedit:Iter [26/100]\tlr_generator: 2.000e-04, eta: 0:01:42, time: 0.052, data_time: 0.017, memory: 586, loss_pix: 0.1357, loss: 0.1357\n","2021-07-01 12:03:20,181 - mmedit - INFO - Iter [27/100]\tlr_generator: 2.000e-04, eta: 0:01:37, time: 0.054, data_time: 0.017, memory: 586, loss_pix: 0.1259, loss: 0.1259\n","INFO:mmedit:Iter [27/100]\tlr_generator: 2.000e-04, eta: 0:01:37, time: 0.054, data_time: 0.017, memory: 586, loss_pix: 0.1259, loss: 0.1259\n","2021-07-01 12:03:20,244 - mmedit - INFO - Iter [28/100]\tlr_generator: 2.000e-04, eta: 0:01:33, time: 0.067, data_time: 0.024, memory: 586, loss_pix: 0.1102, loss: 0.1102\n","INFO:mmedit:Iter [28/100]\tlr_generator: 2.000e-04, eta: 0:01:33, time: 0.067, data_time: 0.024, memory: 586, loss_pix: 0.1102, loss: 0.1102\n","2021-07-01 12:03:20,310 - mmedit - INFO - Iter [29/100]\tlr_generator: 2.000e-04, eta: 0:01:28, time: 0.061, data_time: 0.023, memory: 586, loss_pix: 0.1121, loss: 0.1121\n","INFO:mmedit:Iter [29/100]\tlr_generator: 2.000e-04, eta: 0:01:28, time: 0.061, data_time: 0.023, memory: 586, loss_pix: 0.1121, loss: 0.1121\n","2021-07-01 12:03:20,356 - mmedit - INFO - Iter [30/100]\tlr_generator: 2.000e-04, eta: 0:01:24, time: 0.060, data_time: 0.022, memory: 586, loss_pix: 0.1103, loss: 0.1103\n","INFO:mmedit:Iter [30/100]\tlr_generator: 2.000e-04, eta: 0:01:24, time: 0.060, data_time: 0.022, memory: 586, loss_pix: 0.1103, loss: 0.1103\n","2021-07-01 12:03:20,410 - mmedit - INFO - Iter [31/100]\tlr_generator: 2.000e-04, eta: 0:01:20, time: 0.053, data_time: 0.011, memory: 586, loss_pix: 0.1180, loss: 0.1180\n","INFO:mmedit:Iter [31/100]\tlr_generator: 2.000e-04, eta: 0:01:20, time: 0.053, data_time: 0.011, memory: 586, loss_pix: 0.1180, loss: 0.1180\n","2021-07-01 12:03:20,480 - mmedit - INFO - Iter [32/100]\tlr_generator: 2.000e-04, eta: 0:01:17, time: 0.062, data_time: 0.028, memory: 586, loss_pix: 0.1164, loss: 0.1164\n","INFO:mmedit:Iter [32/100]\tlr_generator: 2.000e-04, eta: 0:01:17, time: 0.062, data_time: 0.028, memory: 586, loss_pix: 0.1164, loss: 0.1164\n","2021-07-01 12:03:20,536 - mmedit - INFO - Iter [33/100]\tlr_generator: 2.000e-04, eta: 0:01:14, time: 0.048, data_time: 0.019, memory: 586, loss_pix: 0.1064, loss: 0.1064\n","INFO:mmedit:Iter [33/100]\tlr_generator: 2.000e-04, eta: 0:01:14, time: 0.048, data_time: 0.019, memory: 586, loss_pix: 0.1064, loss: 0.1064\n","2021-07-01 12:03:20,595 - mmedit - INFO - Iter [34/100]\tlr_generator: 2.000e-04, eta: 0:01:10, time: 0.064, data_time: 0.024, memory: 586, loss_pix: 0.1173, loss: 0.1173\n","INFO:mmedit:Iter [34/100]\tlr_generator: 2.000e-04, eta: 0:01:10, time: 0.064, data_time: 0.024, memory: 586, loss_pix: 0.1173, loss: 0.1173\n","2021-07-01 12:03:20,656 - mmedit - INFO - Iter [35/100]\tlr_generator: 2.000e-04, eta: 0:01:07, time: 0.064, data_time: 0.019, memory: 586, loss_pix: 0.1108, loss: 0.1108\n","INFO:mmedit:Iter [35/100]\tlr_generator: 2.000e-04, eta: 0:01:07, time: 0.064, data_time: 0.019, memory: 586, loss_pix: 0.1108, loss: 0.1108\n","2021-07-01 12:03:20,710 - mmedit - INFO - Iter [36/100]\tlr_generator: 2.000e-04, eta: 0:01:05, time: 0.063, data_time: 0.011, memory: 586, loss_pix: 0.1036, loss: 0.1036\n","INFO:mmedit:Iter [36/100]\tlr_generator: 2.000e-04, eta: 0:01:05, time: 0.063, data_time: 0.011, memory: 586, loss_pix: 0.1036, loss: 0.1036\n","2021-07-01 12:03:20,779 - mmedit - INFO - Iter [37/100]\tlr_generator: 2.000e-04, eta: 0:01:02, time: 0.057, data_time: 0.012, memory: 586, loss_pix: 0.1097, loss: 0.1097\n","INFO:mmedit:Iter [37/100]\tlr_generator: 2.000e-04, eta: 0:01:02, time: 0.057, data_time: 0.012, memory: 586, loss_pix: 0.1097, loss: 0.1097\n","2021-07-01 12:03:20,846 - mmedit - INFO - Iter [38/100]\tlr_generator: 2.000e-04, eta: 0:00:59, time: 0.063, data_time: 0.015, memory: 586, loss_pix: 0.0987, loss: 0.0987\n","INFO:mmedit:Iter [38/100]\tlr_generator: 2.000e-04, eta: 0:00:59, time: 0.063, data_time: 0.015, memory: 586, loss_pix: 0.0987, loss: 0.0987\n","2021-07-01 12:03:20,907 - mmedit - INFO - Iter [39/100]\tlr_generator: 2.000e-04, eta: 0:00:57, time: 0.067, data_time: 0.018, memory: 586, loss_pix: 0.1024, loss: 0.1024\n","INFO:mmedit:Iter [39/100]\tlr_generator: 2.000e-04, eta: 0:00:57, time: 0.067, data_time: 0.018, memory: 586, loss_pix: 0.1024, loss: 0.1024\n","2021-07-01 12:03:20,958 - mmedit - INFO - Iter [40/100]\tlr_generator: 2.000e-04, eta: 0:00:55, time: 0.049, data_time: 0.012, memory: 586, loss_pix: 0.1006, loss: 0.1006\n","INFO:mmedit:Iter [40/100]\tlr_generator: 2.000e-04, eta: 0:00:55, time: 0.049, data_time: 0.012, memory: 586, loss_pix: 0.1006, loss: 0.1006\n","2021-07-01 12:03:21,028 - mmedit - INFO - Iter [41/100]\tlr_generator: 2.000e-04, eta: 0:00:53, time: 0.069, data_time: 0.033, memory: 586, loss_pix: 0.1032, loss: 0.1032\n","INFO:mmedit:Iter [41/100]\tlr_generator: 2.000e-04, eta: 0:00:53, time: 0.069, data_time: 0.033, memory: 586, loss_pix: 0.1032, loss: 0.1032\n","2021-07-01 12:03:21,122 - mmedit - INFO - Iter [42/100]\tlr_generator: 2.000e-04, eta: 0:00:51, time: 0.091, data_time: 0.051, memory: 586, loss_pix: 0.0984, loss: 0.0984\n","INFO:mmedit:Iter [42/100]\tlr_generator: 2.000e-04, eta: 0:00:51, time: 0.091, data_time: 0.051, memory: 586, loss_pix: 0.0984, loss: 0.0984\n","2021-07-01 12:03:21,181 - mmedit - INFO - Iter [43/100]\tlr_generator: 2.000e-04, eta: 0:00:49, time: 0.067, data_time: 0.033, memory: 586, loss_pix: 0.1097, loss: 0.1097\n","INFO:mmedit:Iter [43/100]\tlr_generator: 2.000e-04, eta: 0:00:49, time: 0.067, data_time: 0.033, memory: 586, loss_pix: 0.1097, loss: 0.1097\n","2021-07-01 12:03:21,418 - mmedit - INFO - Iter [44/100]\tlr_generator: 2.000e-04, eta: 0:00:47, time: 0.232, data_time: 0.189, memory: 586, loss_pix: 0.0883, loss: 0.0883\n","INFO:mmedit:Iter [44/100]\tlr_generator: 2.000e-04, eta: 0:00:47, time: 0.232, data_time: 0.189, memory: 586, loss_pix: 0.0883, loss: 0.0883\n","2021-07-01 12:03:21,480 - mmedit - INFO - Iter [45/100]\tlr_generator: 2.000e-04, eta: 0:00:45, time: 0.064, data_time: 0.016, memory: 586, loss_pix: 0.1024, loss: 0.1024\n","INFO:mmedit:Iter [45/100]\tlr_generator: 2.000e-04, eta: 0:00:45, time: 0.064, data_time: 0.016, memory: 586, loss_pix: 0.1024, loss: 0.1024\n","2021-07-01 12:03:21,551 - mmedit - INFO - Iter [46/100]\tlr_generator: 2.000e-04, eta: 0:00:43, time: 0.063, data_time: 0.022, memory: 586, loss_pix: 0.0976, loss: 0.0976\n","INFO:mmedit:Iter [46/100]\tlr_generator: 2.000e-04, eta: 0:00:43, time: 0.063, data_time: 0.022, memory: 586, loss_pix: 0.0976, loss: 0.0976\n","2021-07-01 12:03:21,618 - mmedit - INFO - Iter [47/100]\tlr_generator: 2.000e-04, eta: 0:00:42, time: 0.073, data_time: 0.030, memory: 586, loss_pix: 0.1026, loss: 0.1026\n","INFO:mmedit:Iter [47/100]\tlr_generator: 2.000e-04, eta: 0:00:42, time: 0.073, data_time: 0.030, memory: 586, loss_pix: 0.1026, loss: 0.1026\n","2021-07-01 12:03:21,667 - mmedit - INFO - Iter [48/100]\tlr_generator: 2.000e-04, eta: 0:00:40, time: 0.054, data_time: 0.016, memory: 586, loss_pix: 0.0876, loss: 0.0876\n","INFO:mmedit:Iter [48/100]\tlr_generator: 2.000e-04, eta: 0:00:40, time: 0.054, data_time: 0.016, memory: 586, loss_pix: 0.0876, loss: 0.0876\n","2021-07-01 12:03:21,743 - mmedit - INFO - Iter [49/100]\tlr_generator: 2.000e-04, eta: 0:00:39, time: 0.067, data_time: 0.011, memory: 586, loss_pix: 0.0923, loss: 0.0923\n","INFO:mmedit:Iter [49/100]\tlr_generator: 2.000e-04, eta: 0:00:39, time: 0.067, data_time: 0.011, memory: 586, loss_pix: 0.0923, loss: 0.0923\n","[>>] 5/5, 0.1 task/s, elapsed: 37s, ETA:     0s\n","\n","2021-07-01 12:03:59,996 - mmedit - INFO - Iter(val) [50]\tPSNR: 19.4410, SSIM: 0.5387\n","INFO:mmedit:Iter(val) [50]\tPSNR: 19.4410, SSIM: 0.5387\n","2021-07-01 12:04:00,047 - mmedit - INFO - Iter [51/100]\tlr_generator: 2.000e-04, eta: 0:01:12, time: 38.229, data_time: 38.203, memory: 586, loss_pix: 0.0909, loss: 0.0909\n","INFO:mmedit:Iter [51/100]\tlr_generator: 2.000e-04, eta: 0:01:12, time: 38.229, data_time: 38.203, memory: 586, loss_pix: 0.0909, loss: 0.0909\n","2021-07-01 12:04:00,114 - mmedit - INFO - Iter [52/100]\tlr_generator: 2.000e-04, eta: 0:01:10, time: 0.075, data_time: 0.027, memory: 586, loss_pix: 0.1137, loss: 0.1137\n","INFO:mmedit:Iter [52/100]\tlr_generator: 2.000e-04, eta: 0:01:10, time: 0.075, data_time: 0.027, memory: 586, loss_pix: 0.1137, loss: 0.1137\n","2021-07-01 12:04:00,181 - mmedit - INFO - Iter [53/100]\tlr_generator: 2.000e-04, eta: 0:01:07, time: 0.060, data_time: 0.017, memory: 586, loss_pix: 0.0964, loss: 0.0964\n","INFO:mmedit:Iter [53/100]\tlr_generator: 2.000e-04, eta: 0:01:07, time: 0.060, data_time: 0.017, memory: 586, loss_pix: 0.0964, loss: 0.0964\n","2021-07-01 12:04:00,251 - mmedit - INFO - Iter [54/100]\tlr_generator: 2.000e-04, eta: 0:01:04, time: 0.073, data_time: 0.030, memory: 586, loss_pix: 0.0802, loss: 0.0802\n","INFO:mmedit:Iter [54/100]\tlr_generator: 2.000e-04, eta: 0:01:04, time: 0.073, data_time: 0.030, memory: 586, loss_pix: 0.0802, loss: 0.0802\n","2021-07-01 12:04:00,315 - mmedit - INFO - Iter [55/100]\tlr_generator: 2.000e-04, eta: 0:01:02, time: 0.060, data_time: 0.028, memory: 586, loss_pix: 0.0896, loss: 0.0896\n","INFO:mmedit:Iter [55/100]\tlr_generator: 2.000e-04, eta: 0:01:02, time: 0.060, data_time: 0.028, memory: 586, loss_pix: 0.0896, loss: 0.0896\n","2021-07-01 12:04:00,373 - mmedit - INFO - Iter [56/100]\tlr_generator: 2.000e-04, eta: 0:00:59, time: 0.075, data_time: 0.031, memory: 586, loss_pix: 0.0949, loss: 0.0949\n","INFO:mmedit:Iter [56/100]\tlr_generator: 2.000e-04, eta: 0:00:59, time: 0.075, data_time: 0.031, memory: 586, loss_pix: 0.0949, loss: 0.0949\n","2021-07-01 12:04:00,418 - mmedit - INFO - Iter [57/100]\tlr_generator: 2.000e-04, eta: 0:00:57, time: 0.043, data_time: 0.013, memory: 586, loss_pix: 0.0884, loss: 0.0884\n","INFO:mmedit:Iter [57/100]\tlr_generator: 2.000e-04, eta: 0:00:57, time: 0.043, data_time: 0.013, memory: 586, loss_pix: 0.0884, loss: 0.0884\n","2021-07-01 12:04:00,478 - mmedit - INFO - Iter [58/100]\tlr_generator: 2.000e-04, eta: 0:00:55, time: 0.056, data_time: 0.020, memory: 586, loss_pix: 0.0924, loss: 0.0924\n","INFO:mmedit:Iter [58/100]\tlr_generator: 2.000e-04, eta: 0:00:55, time: 0.056, data_time: 0.020, memory: 586, loss_pix: 0.0924, loss: 0.0924\n","2021-07-01 12:04:00,538 - mmedit - INFO - Iter [59/100]\tlr_generator: 2.000e-04, eta: 0:00:53, time: 0.061, data_time: 0.015, memory: 586, loss_pix: 0.0789, loss: 0.0789\n","INFO:mmedit:Iter [59/100]\tlr_generator: 2.000e-04, eta: 0:00:53, time: 0.061, data_time: 0.015, memory: 586, loss_pix: 0.0789, loss: 0.0789\n","2021-07-01 12:04:00,606 - mmedit - INFO - Iter [60/100]\tlr_generator: 2.000e-04, eta: 0:00:50, time: 0.066, data_time: 0.014, memory: 586, loss_pix: 0.0940, loss: 0.0940\n","INFO:mmedit:Iter [60/100]\tlr_generator: 2.000e-04, eta: 0:00:50, time: 0.066, data_time: 0.014, memory: 586, loss_pix: 0.0940, loss: 0.0940\n","2021-07-01 12:04:00,647 - mmedit - INFO - Iter [61/100]\tlr_generator: 2.000e-04, eta: 0:00:48, time: 0.051, data_time: 0.016, memory: 586, loss_pix: 0.0852, loss: 0.0852\n","INFO:mmedit:Iter [61/100]\tlr_generator: 2.000e-04, eta: 0:00:48, time: 0.051, data_time: 0.016, memory: 586, loss_pix: 0.0852, loss: 0.0852\n","2021-07-01 12:04:00,711 - mmedit - INFO - Iter [62/100]\tlr_generator: 2.000e-04, eta: 0:00:46, time: 0.040, data_time: 0.008, memory: 586, loss_pix: 0.0841, loss: 0.0841\n","INFO:mmedit:Iter [62/100]\tlr_generator: 2.000e-04, eta: 0:00:46, time: 0.040, data_time: 0.008, memory: 586, loss_pix: 0.0841, loss: 0.0841\n","2021-07-01 12:04:00,757 - mmedit - INFO - Iter [63/100]\tlr_generator: 2.000e-04, eta: 0:00:44, time: 0.064, data_time: 0.030, memory: 586, loss_pix: 0.0917, loss: 0.0917\n","INFO:mmedit:Iter [63/100]\tlr_generator: 2.000e-04, eta: 0:00:44, time: 0.064, data_time: 0.030, memory: 586, loss_pix: 0.0917, loss: 0.0917\n","2021-07-01 12:04:00,799 - mmedit - INFO - Iter [64/100]\tlr_generator: 2.000e-04, eta: 0:00:43, time: 0.047, data_time: 0.012, memory: 586, loss_pix: 0.0847, loss: 0.0847\n","INFO:mmedit:Iter [64/100]\tlr_generator: 2.000e-04, eta: 0:00:43, time: 0.047, data_time: 0.012, memory: 586, loss_pix: 0.0847, loss: 0.0847\n","2021-07-01 12:04:00,871 - mmedit - INFO - Iter [65/100]\tlr_generator: 2.000e-04, eta: 0:00:41, time: 0.071, data_time: 0.014, memory: 586, loss_pix: 0.0828, loss: 0.0828\n","INFO:mmedit:Iter [65/100]\tlr_generator: 2.000e-04, eta: 0:00:41, time: 0.071, data_time: 0.014, memory: 586, loss_pix: 0.0828, loss: 0.0828\n","2021-07-01 12:04:00,938 - mmedit - INFO - Iter [66/100]\tlr_generator: 2.000e-04, eta: 0:00:39, time: 0.058, data_time: 0.021, memory: 586, loss_pix: 0.0691, loss: 0.0691\n","INFO:mmedit:Iter [66/100]\tlr_generator: 2.000e-04, eta: 0:00:39, time: 0.058, data_time: 0.021, memory: 586, loss_pix: 0.0691, loss: 0.0691\n","2021-07-01 12:04:00,995 - mmedit - INFO - Iter [67/100]\tlr_generator: 2.000e-04, eta: 0:00:37, time: 0.063, data_time: 0.026, memory: 586, loss_pix: 0.0856, loss: 0.0856\n","INFO:mmedit:Iter [67/100]\tlr_generator: 2.000e-04, eta: 0:00:37, time: 0.063, data_time: 0.026, memory: 586, loss_pix: 0.0856, loss: 0.0856\n","2021-07-01 12:04:01,051 - mmedit - INFO - Iter [68/100]\tlr_generator: 2.000e-04, eta: 0:00:36, time: 0.057, data_time: 0.012, memory: 586, loss_pix: 0.0740, loss: 0.0740\n","INFO:mmedit:Iter [68/100]\tlr_generator: 2.000e-04, eta: 0:00:36, time: 0.057, data_time: 0.012, memory: 586, loss_pix: 0.0740, loss: 0.0740\n","2021-07-01 12:04:01,115 - mmedit - INFO - Iter [69/100]\tlr_generator: 2.000e-04, eta: 0:00:34, time: 0.059, data_time: 0.011, memory: 586, loss_pix: 0.0828, loss: 0.0828\n","INFO:mmedit:Iter [69/100]\tlr_generator: 2.000e-04, eta: 0:00:34, time: 0.059, data_time: 0.011, memory: 586, loss_pix: 0.0828, loss: 0.0828\n","2021-07-01 12:04:01,196 - mmedit - INFO - Iter [70/100]\tlr_generator: 2.000e-04, eta: 0:00:33, time: 0.079, data_time: 0.020, memory: 586, loss_pix: 0.0814, loss: 0.0814\n","INFO:mmedit:Iter [70/100]\tlr_generator: 2.000e-04, eta: 0:00:33, time: 0.079, data_time: 0.020, memory: 586, loss_pix: 0.0814, loss: 0.0814\n","2021-07-01 12:04:01,256 - mmedit - INFO - Iter [71/100]\tlr_generator: 2.000e-04, eta: 0:00:31, time: 0.066, data_time: 0.018, memory: 586, loss_pix: 0.0885, loss: 0.0885\n","INFO:mmedit:Iter [71/100]\tlr_generator: 2.000e-04, eta: 0:00:31, time: 0.066, data_time: 0.018, memory: 586, loss_pix: 0.0885, loss: 0.0885\n","2021-07-01 12:04:01,325 - mmedit - INFO - Iter [72/100]\tlr_generator: 2.000e-04, eta: 0:00:30, time: 0.070, data_time: 0.022, memory: 586, loss_pix: 0.0831, loss: 0.0831\n","INFO:mmedit:Iter [72/100]\tlr_generator: 2.000e-04, eta: 0:00:30, time: 0.070, data_time: 0.022, memory: 586, loss_pix: 0.0831, loss: 0.0831\n","2021-07-01 12:04:01,381 - mmedit - INFO - Iter [73/100]\tlr_generator: 2.000e-04, eta: 0:00:28, time: 0.054, data_time: 0.013, memory: 586, loss_pix: 0.0825, loss: 0.0825\n","INFO:mmedit:Iter [73/100]\tlr_generator: 2.000e-04, eta: 0:00:28, time: 0.054, data_time: 0.013, memory: 586, loss_pix: 0.0825, loss: 0.0825\n","2021-07-01 12:04:01,429 - mmedit - INFO - Iter [74/100]\tlr_generator: 2.000e-04, eta: 0:00:27, time: 0.054, data_time: 0.019, memory: 586, loss_pix: 0.0832, loss: 0.0832\n","INFO:mmedit:Iter [74/100]\tlr_generator: 2.000e-04, eta: 0:00:27, time: 0.054, data_time: 0.019, memory: 586, loss_pix: 0.0832, loss: 0.0832\n","2021-07-01 12:04:01,497 - mmedit - INFO - Iter [75/100]\tlr_generator: 2.000e-04, eta: 0:00:25, time: 0.064, data_time: 0.019, memory: 586, loss_pix: 0.0714, loss: 0.0714\n","INFO:mmedit:Iter [75/100]\tlr_generator: 2.000e-04, eta: 0:00:25, time: 0.064, data_time: 0.019, memory: 586, loss_pix: 0.0714, loss: 0.0714\n","2021-07-01 12:04:01,545 - mmedit - INFO - Iter [76/100]\tlr_generator: 2.000e-04, eta: 0:00:24, time: 0.047, data_time: 0.018, memory: 586, loss_pix: 0.0844, loss: 0.0844\n","INFO:mmedit:Iter [76/100]\tlr_generator: 2.000e-04, eta: 0:00:24, time: 0.047, data_time: 0.018, memory: 586, loss_pix: 0.0844, loss: 0.0844\n","2021-07-01 12:04:01,597 - mmedit - INFO - Iter [77/100]\tlr_generator: 2.000e-04, eta: 0:00:23, time: 0.052, data_time: 0.016, memory: 586, loss_pix: 0.0803, loss: 0.0803\n","INFO:mmedit:Iter [77/100]\tlr_generator: 2.000e-04, eta: 0:00:23, time: 0.052, data_time: 0.016, memory: 586, loss_pix: 0.0803, loss: 0.0803\n","2021-07-01 12:04:01,671 - mmedit - INFO - Iter [78/100]\tlr_generator: 2.000e-04, eta: 0:00:21, time: 0.065, data_time: 0.020, memory: 586, loss_pix: 0.0716, loss: 0.0716\n","INFO:mmedit:Iter [78/100]\tlr_generator: 2.000e-04, eta: 0:00:21, time: 0.065, data_time: 0.020, memory: 586, loss_pix: 0.0716, loss: 0.0716\n","2021-07-01 12:04:01,724 - mmedit - INFO - Iter [79/100]\tlr_generator: 2.000e-04, eta: 0:00:20, time: 0.065, data_time: 0.025, memory: 586, loss_pix: 0.0786, loss: 0.0786\n","INFO:mmedit:Iter [79/100]\tlr_generator: 2.000e-04, eta: 0:00:20, time: 0.065, data_time: 0.025, memory: 586, loss_pix: 0.0786, loss: 0.0786\n","2021-07-01 12:04:01,777 - mmedit - INFO - Iter [80/100]\tlr_generator: 2.000e-04, eta: 0:00:19, time: 0.056, data_time: 0.020, memory: 586, loss_pix: 0.0838, loss: 0.0838\n","INFO:mmedit:Iter [80/100]\tlr_generator: 2.000e-04, eta: 0:00:19, time: 0.056, data_time: 0.020, memory: 586, loss_pix: 0.0838, loss: 0.0838\n","2021-07-01 12:04:01,847 - mmedit - INFO - Iter [81/100]\tlr_generator: 2.000e-04, eta: 0:00:18, time: 0.055, data_time: 0.013, memory: 586, loss_pix: 0.0815, loss: 0.0815\n","INFO:mmedit:Iter [81/100]\tlr_generator: 2.000e-04, eta: 0:00:18, time: 0.055, data_time: 0.013, memory: 586, loss_pix: 0.0815, loss: 0.0815\n","2021-07-01 12:04:01,905 - mmedit - INFO - Iter [82/100]\tlr_generator: 2.000e-04, eta: 0:00:17, time: 0.070, data_time: 0.025, memory: 586, loss_pix: 0.0768, loss: 0.0768\n","INFO:mmedit:Iter [82/100]\tlr_generator: 2.000e-04, eta: 0:00:17, time: 0.070, data_time: 0.025, memory: 586, loss_pix: 0.0768, loss: 0.0768\n","2021-07-01 12:04:01,953 - mmedit - INFO - Iter [83/100]\tlr_generator: 2.000e-04, eta: 0:00:15, time: 0.045, data_time: 0.013, memory: 586, loss_pix: 0.0760, loss: 0.0760\n","INFO:mmedit:Iter [83/100]\tlr_generator: 2.000e-04, eta: 0:00:15, time: 0.045, data_time: 0.013, memory: 586, loss_pix: 0.0760, loss: 0.0760\n","2021-07-01 12:04:02,025 - mmedit - INFO - Iter [84/100]\tlr_generator: 2.000e-04, eta: 0:00:14, time: 0.071, data_time: 0.035, memory: 586, loss_pix: 0.0820, loss: 0.0820\n","INFO:mmedit:Iter [84/100]\tlr_generator: 2.000e-04, eta: 0:00:14, time: 0.071, data_time: 0.035, memory: 586, loss_pix: 0.0820, loss: 0.0820\n","2021-07-01 12:04:02,079 - mmedit - INFO - Iter [85/100]\tlr_generator: 2.000e-04, eta: 0:00:13, time: 0.059, data_time: 0.019, memory: 586, loss_pix: 0.0731, loss: 0.0731\n","INFO:mmedit:Iter [85/100]\tlr_generator: 2.000e-04, eta: 0:00:13, time: 0.059, data_time: 0.019, memory: 586, loss_pix: 0.0731, loss: 0.0731\n","2021-07-01 12:04:02,137 - mmedit - INFO - Iter [86/100]\tlr_generator: 2.000e-04, eta: 0:00:12, time: 0.064, data_time: 0.013, memory: 586, loss_pix: 0.0712, loss: 0.0712\n","INFO:mmedit:Iter [86/100]\tlr_generator: 2.000e-04, eta: 0:00:12, time: 0.064, data_time: 0.013, memory: 586, loss_pix: 0.0712, loss: 0.0712\n","2021-07-01 12:04:02,193 - mmedit - INFO - Iter [87/100]\tlr_generator: 2.000e-04, eta: 0:00:11, time: 0.048, data_time: 0.020, memory: 586, loss_pix: 0.0786, loss: 0.0786\n","INFO:mmedit:Iter [87/100]\tlr_generator: 2.000e-04, eta: 0:00:11, time: 0.048, data_time: 0.020, memory: 586, loss_pix: 0.0786, loss: 0.0786\n","2021-07-01 12:04:02,255 - mmedit - INFO - Iter [88/100]\tlr_generator: 2.000e-04, eta: 0:00:10, time: 0.070, data_time: 0.018, memory: 586, loss_pix: 0.0641, loss: 0.0641\n","INFO:mmedit:Iter [88/100]\tlr_generator: 2.000e-04, eta: 0:00:10, time: 0.070, data_time: 0.018, memory: 586, loss_pix: 0.0641, loss: 0.0641\n","2021-07-01 12:04:02,341 - mmedit - INFO - Iter [89/100]\tlr_generator: 2.000e-04, eta: 0:00:09, time: 0.074, data_time: 0.027, memory: 586, loss_pix: 0.0589, loss: 0.0589\n","INFO:mmedit:Iter [89/100]\tlr_generator: 2.000e-04, eta: 0:00:09, time: 0.074, data_time: 0.027, memory: 586, loss_pix: 0.0589, loss: 0.0589\n","2021-07-01 12:04:02,394 - mmedit - INFO - Iter [90/100]\tlr_generator: 2.000e-04, eta: 0:00:08, time: 0.056, data_time: 0.019, memory: 586, loss_pix: 0.0601, loss: 0.0601\n","INFO:mmedit:Iter [90/100]\tlr_generator: 2.000e-04, eta: 0:00:08, time: 0.056, data_time: 0.019, memory: 586, loss_pix: 0.0601, loss: 0.0601\n","2021-07-01 12:04:02,496 - mmedit - INFO - Iter [91/100]\tlr_generator: 2.000e-04, eta: 0:00:07, time: 0.111, data_time: 0.062, memory: 586, loss_pix: 0.0684, loss: 0.0684\n","INFO:mmedit:Iter [91/100]\tlr_generator: 2.000e-04, eta: 0:00:07, time: 0.111, data_time: 0.062, memory: 586, loss_pix: 0.0684, loss: 0.0684\n","2021-07-01 12:04:02,552 - mmedit - INFO - Iter [92/100]\tlr_generator: 2.000e-04, eta: 0:00:06, time: 0.050, data_time: 0.008, memory: 586, loss_pix: 0.0691, loss: 0.0691\n","INFO:mmedit:Iter [92/100]\tlr_generator: 2.000e-04, eta: 0:00:06, time: 0.050, data_time: 0.008, memory: 586, loss_pix: 0.0691, loss: 0.0691\n","2021-07-01 12:04:02,629 - mmedit - INFO - Iter [93/100]\tlr_generator: 2.000e-04, eta: 0:00:05, time: 0.071, data_time: 0.021, memory: 586, loss_pix: 0.0615, loss: 0.0615\n","INFO:mmedit:Iter [93/100]\tlr_generator: 2.000e-04, eta: 0:00:05, time: 0.071, data_time: 0.021, memory: 586, loss_pix: 0.0615, loss: 0.0615\n","2021-07-01 12:04:02,682 - mmedit - INFO - Iter [94/100]\tlr_generator: 2.000e-04, eta: 0:00:05, time: 0.064, data_time: 0.017, memory: 586, loss_pix: 0.0672, loss: 0.0672\n","INFO:mmedit:Iter [94/100]\tlr_generator: 2.000e-04, eta: 0:00:05, time: 0.064, data_time: 0.017, memory: 586, loss_pix: 0.0672, loss: 0.0672\n","2021-07-01 12:04:02,791 - mmedit - INFO - Iter [95/100]\tlr_generator: 2.000e-04, eta: 0:00:04, time: 0.097, data_time: 0.071, memory: 586, loss_pix: 0.0549, loss: 0.0549\n","INFO:mmedit:Iter [95/100]\tlr_generator: 2.000e-04, eta: 0:00:04, time: 0.097, data_time: 0.071, memory: 586, loss_pix: 0.0549, loss: 0.0549\n","2021-07-01 12:04:02,834 - mmedit - INFO - Iter [96/100]\tlr_generator: 2.000e-04, eta: 0:00:03, time: 0.056, data_time: 0.024, memory: 586, loss_pix: 0.0600, loss: 0.0600\n","INFO:mmedit:Iter [96/100]\tlr_generator: 2.000e-04, eta: 0:00:03, time: 0.056, data_time: 0.024, memory: 586, loss_pix: 0.0600, loss: 0.0600\n","2021-07-01 12:04:02,900 - mmedit - INFO - Iter [97/100]\tlr_generator: 2.000e-04, eta: 0:00:02, time: 0.066, data_time: 0.018, memory: 586, loss_pix: 0.0608, loss: 0.0608\n","INFO:mmedit:Iter [97/100]\tlr_generator: 2.000e-04, eta: 0:00:02, time: 0.066, data_time: 0.018, memory: 586, loss_pix: 0.0608, loss: 0.0608\n","2021-07-01 12:04:03,053 - mmedit - INFO - Iter [98/100]\tlr_generator: 2.000e-04, eta: 0:00:01, time: 0.145, data_time: 0.100, memory: 586, loss_pix: 0.0574, loss: 0.0574\n","INFO:mmedit:Iter [98/100]\tlr_generator: 2.000e-04, eta: 0:00:01, time: 0.145, data_time: 0.100, memory: 586, loss_pix: 0.0574, loss: 0.0574\n","2021-07-01 12:04:03,108 - mmedit - INFO - Iter [99/100]\tlr_generator: 2.000e-04, eta: 0:00:00, time: 0.054, data_time: 0.017, memory: 586, loss_pix: 0.0584, loss: 0.0584\n","INFO:mmedit:Iter [99/100]\tlr_generator: 2.000e-04, eta: 0:00:00, time: 0.054, data_time: 0.017, memory: 586, loss_pix: 0.0584, loss: 0.0584\n","[>>] 5/5, 0.2 task/s, elapsed: 33s, ETA:     0s\n","\n","2021-07-01 12:04:37,412 - mmedit - INFO - Saving checkpoint at 100 iterations\n","INFO:mmedit:Saving checkpoint at 100 iterations\n","2021-07-01 12:04:37,422 - mmedit - INFO - Iter(val) [100]\tPSNR: 22.4152, SSIM: 0.6525\n","INFO:mmedit:Iter(val) [100]\tPSNR: 22.4152, SSIM: 0.6525\n"]}],"source":["# SRCNN (Single Image Super-Resolution)\n","!./tools/dist_train.sh ./demo_files/demo_config_SRCNN.py 1 "]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":117937,"status":"ok","timestamp":1625141554036,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"26uZ4Ak7qbC9","outputId":"2fb26527-eb9e-4b48-e03c-ba9a91c60db8"},"outputs":[{"name":"stdout","output_type":"stream","text":["2021-07-01 12:10:12,619 - mmedit - INFO - Environment info:\n","------------------------------------------------------------\n","sys.platform: linux\n","Python: 3.7.10 (default, May  3 2021, 02:48:31) [GCC 7.5.0]\n","CUDA available: True\n","GPU 0: Tesla T4\n","CUDA_HOME: /usr/local/cuda\n","NVCC: Build cuda_11.0_bu.TC445_37.28845127_0\n","GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0\n","PyTorch: 1.7.0+cu110\n","PyTorch compiling details: PyTorch built with:\n","  - GCC 7.3\n","  - C++ Version: 201402\n","  - Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications\n","  - Intel(R) MKL-DNN v1.6.0 (Git Hash 5ef631a030a6f73131c77892041042805a06064f)\n","  - OpenMP 201511 (a.k.a. OpenMP 4.5)\n","  - NNPACK is enabled\n","  - CPU capability usage: AVX2\n","  - CUDA Runtime 11.0\n","  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80\n","  - CuDNN 8.0.4\n","  - Magma 2.5.2\n","  - Build settings: BLAS=MKL, BUILD_TYPE=Release, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DUSE_VULKAN_WRAPPER -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, USE_CUDA=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, \n","\n","TorchVision: 0.8.0\n","OpenCV: 4.1.2\n","MMCV: 1.3.5\n","MMCV Compiler: GCC 7.3\n","MMCV CUDA Compiler: 11.0\n","MMEditing: 0.8.0+7f4fa79\n","------------------------------------------------------------\n","\n","2021-07-01 12:10:12,619 - mmedit - INFO - Distributed training: True\n","2021-07-01 12:10:12,619 - mmedit - INFO - mmedit Version: 0.8.0\n","2021-07-01 12:10:12,619 - mmedit - INFO - Config:\n","/content/mmediting/demo_files/demo_config_EDVR.py\n","exp_name = 'edvrm_demo'\n","\n","# model settings\n","model = dict(\n","    type='EDVR',\n","    generator=dict(\n","        type='EDVRNet',\n","        in_channels=3,\n","        out_channels=3,\n","        mid_channels=64,\n","        num_frames=5,\n","        deform_groups=8,\n","        num_blocks_extraction=5,\n","        num_blocks_reconstruction=10,\n","        center_frame_idx=2,\n","        with_tsa=False),\n","    pixel_loss=dict(type='CharbonnierLoss', loss_weight=1.0, reduction='sum'))\n","# model training and testing settings\n","train_cfg = None\n","test_cfg = dict(metrics=['PSNR', 'SSIM'], crop_border=0)\n","\n","# dataset settings\n","train_dataset_type = 'SRFolderVideoDataset'\n","val_dataset_type = 'SRFolderVideoDataset'\n","train_pipeline = [\n","    dict(type='GenerateFrameIndices', interval_list=[1], frames_per_clip=99),\n","    dict(type='TemporalReverse', keys='lq_path', reverse_ratio=0),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(type='PairedRandomCrop', gt_patch_size=256),\n","    dict(\n","        type='Flip', keys=['lq', 'gt'], flip_ratio=0.5,\n","        direction='horizontal'),\n","    dict(type='Flip', keys=['lq', 'gt'], flip_ratio=0.5, direction='vertical'),\n","    dict(type='RandomTransposeHW', keys=['lq', 'gt'], transpose_ratio=0.5),\n","    dict(type='Collect', keys=['lq', 'gt'], meta_keys=['lq_path', 'gt_path']),\n","    dict(type='FramesToTensor', keys=['lq', 'gt'])\n","]\n","\n","test_pipeline = [\n","    dict(type='GenerateFrameIndiceswithPadding', padding='reflection_circle'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        flag='unchanged'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        flag='unchanged'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(\n","        type='Normalize',\n","        keys=['lq', 'gt'],\n","        mean=[0, 0, 0],\n","        std=[1, 1, 1],\n","        to_rgb=True),\n","    dict(\n","        type='Collect',\n","        keys=['lq', 'gt'],\n","        meta_keys=['lq_path', 'gt_path', 'key']),\n","    dict(type='FramesToTensor', keys=['lq', 'gt'])\n","]\n","\n","data = dict(\n","    workers_per_gpu=4,\n","    train_dataloader=dict(samples_per_gpu=4, drop_last=True),\n","    val_dataloader=dict(samples_per_gpu=1),\n","    test_dataloader=dict(samples_per_gpu=1),\n","    train=dict(\n","        type='RepeatDataset',\n","        times=1000,\n","        dataset=dict(\n","            type=train_dataset_type,\n","            lq_folder='./demo_files/lq_sequences',\n","            gt_folder='./demo_files/gt_sequences',\n","            num_input_frames=5,\n","            pipeline=train_pipeline,\n","            scale=4,\n","            test_mode=False)),\n","    val=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_sequences',\n","        gt_folder='./demo_files/gt_sequences',\n","        num_input_frames=5,\n","        pipeline=test_pipeline,\n","        scale=4,\n","        test_mode=True),\n","    test=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_sequences',\n","        gt_folder='./demo_files/gt_sequences',\n","        num_input_frames=5,\n","        pipeline=test_pipeline,\n","        scale=4,\n","        test_mode=True),\n",")\n","\n","# optimizer\n","optimizers = dict(generator=dict(type='Adam', lr=4e-4, betas=(0.9, 0.999)))\n","\n","# learning policy\n","total_iters = 100\n","lr_config = dict(\n","    policy='CosineRestart',\n","    by_epoch=False,\n","    periods=[150000, 150000, 150000, 150000],\n","    restart_weights=[1, 0.5, 0.5, 0.5],\n","    min_lr=1e-7)\n","\n","checkpoint_config = dict(interval=5000, save_optimizer=True, by_epoch=False)\n","# remove gpu_collect=True in non distributed training\n","evaluation = dict(interval=50, save_image=False, gpu_collect=True)\n","log_config = dict(\n","    interval=1,\n","    hooks=[\n","        dict(type='TextLoggerHook', by_epoch=False),\n","        dict(type='TensorboardLoggerHook'),\n","        # dict(type='PaviLoggerHook', init_kwargs=dict(project='mmedit-sr'))\n","    ])\n","visual_config = None\n","\n","# runtime settings\n","dist_params = dict(backend='nccl')\n","log_level = 'INFO'\n","work_dir = f'./work_dirs/{exp_name}'\n","load_from = None\n","resume_from = None\n","workflow = [('train', 1)]\n","\n","2021-07-01 12:10:12,701 - mmedit - INFO - Start running, host: root@fce870c778f5, work_dir: /content/mmediting/work_dirs/edvrm_demo\n","2021-07-01 12:10:12,702 - mmedit - INFO - workflow: [('train', 1)], max: 100 iters\n","2021-07-01 12:10:12.951771: I tensorflow/stream_executor/platform/default/dso_loader.cc:53] Successfully opened dynamic library libcudart.so.11.0\n","2021-07-01 12:10:30,703 - mmedit - INFO - Iter [1/100]\tlr_generator: 4.000e-04, eta: 0:26:53, time: 16.295, data_time: 15.833, memory: 1341, loss_pix: 63917.2734, loss: 63917.2734\n","2021-07-01 12:10:31,046 - mmedit - INFO - Iter [2/100]\tlr_generator: 4.000e-04, eta: 0:13:35, time: 0.342, data_time: 0.003, memory: 1372, loss_pix: 54741.8516, loss: 54741.8516\n","INFO:mmedit:Iter [2/100]\tlr_generator: 4.000e-04, eta: 0:13:35, time: 0.342, data_time: 0.003, memory: 1372, loss_pix: 54741.8516, loss: 54741.8516\n","2021-07-01 12:10:31,386 - mmedit - INFO - Iter [3/100]\tlr_generator: 4.000e-04, eta: 0:09:08, time: 0.341, data_time: 0.004, memory: 1372, loss_pix: 49077.6562, loss: 49077.6562\n","INFO:mmedit:Iter [3/100]\tlr_generator: 4.000e-04, eta: 0:09:08, time: 0.341, data_time: 0.004, memory: 1372, loss_pix: 49077.6562, loss: 49077.6562\n","2021-07-01 12:10:31,731 - mmedit - INFO - Iter [4/100]\tlr_generator: 4.000e-04, eta: 0:06:55, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 45100.3984, loss: 45100.3984\n","INFO:mmedit:Iter [4/100]\tlr_generator: 4.000e-04, eta: 0:06:55, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 45100.3984, loss: 45100.3984\n","2021-07-01 12:10:32,071 - mmedit - INFO - Iter [5/100]\tlr_generator: 4.000e-04, eta: 0:05:35, time: 0.340, data_time: 0.004, memory: 1372, loss_pix: 37305.7891, loss: 37305.7891\n","INFO:mmedit:Iter [5/100]\tlr_generator: 4.000e-04, eta: 0:05:35, time: 0.340, data_time: 0.004, memory: 1372, loss_pix: 37305.7891, loss: 37305.7891\n","2021-07-01 12:10:32,414 - mmedit - INFO - Iter [6/100]\tlr_generator: 4.000e-04, eta: 0:04:42, time: 0.343, data_time: 0.003, memory: 1372, loss_pix: 53724.2422, loss: 53724.2422\n","INFO:mmedit:Iter [6/100]\tlr_generator: 4.000e-04, eta: 0:04:42, time: 0.343, data_time: 0.003, memory: 1372, loss_pix: 53724.2422, loss: 53724.2422\n","2021-07-01 12:10:32,760 - mmedit - INFO - Iter [7/100]\tlr_generator: 4.000e-04, eta: 0:04:03, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 62958.1641, loss: 62958.1641\n","INFO:mmedit:Iter [7/100]\tlr_generator: 4.000e-04, eta: 0:04:03, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 62958.1641, loss: 62958.1641\n","2021-07-01 12:10:33,102 - mmedit - INFO - Iter [8/100]\tlr_generator: 4.000e-04, eta: 0:03:34, time: 0.343, data_time: 0.004, memory: 1372, loss_pix: 36053.0391, loss: 36053.0391\n","INFO:mmedit:Iter [8/100]\tlr_generator: 4.000e-04, eta: 0:03:34, time: 0.343, data_time: 0.004, memory: 1372, loss_pix: 36053.0391, loss: 36053.0391\n","2021-07-01 12:10:33,447 - mmedit - INFO - Iter [9/100]\tlr_generator: 4.000e-04, eta: 0:03:12, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 60384.7617, loss: 60384.7617\n","INFO:mmedit:Iter [9/100]\tlr_generator: 4.000e-04, eta: 0:03:12, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 60384.7617, loss: 60384.7617\n","2021-07-01 12:10:33,792 - mmedit - INFO - Iter [10/100]\tlr_generator: 4.000e-04, eta: 0:02:54, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 44977.9297, loss: 44977.9297\n","INFO:mmedit:Iter [10/100]\tlr_generator: 4.000e-04, eta: 0:02:54, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 44977.9297, loss: 44977.9297\n","2021-07-01 12:10:34,138 - mmedit - INFO - Iter [11/100]\tlr_generator: 4.000e-04, eta: 0:02:39, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 64897.3984, loss: 64897.3984\n","INFO:mmedit:Iter [11/100]\tlr_generator: 4.000e-04, eta: 0:02:39, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 64897.3984, loss: 64897.3984\n","2021-07-01 12:10:34,484 - mmedit - INFO - Iter [12/100]\tlr_generator: 4.000e-04, eta: 0:02:27, time: 0.344, data_time: 0.002, memory: 1372, loss_pix: 58721.3828, loss: 58721.3828\n","INFO:mmedit:Iter [12/100]\tlr_generator: 4.000e-04, eta: 0:02:27, time: 0.344, data_time: 0.002, memory: 1372, loss_pix: 58721.3828, loss: 58721.3828\n","2021-07-01 12:10:34,829 - mmedit - INFO - Iter [13/100]\tlr_generator: 4.000e-04, eta: 0:02:16, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 38433.5938, loss: 38433.5938\n","INFO:mmedit:Iter [13/100]\tlr_generator: 4.000e-04, eta: 0:02:16, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 38433.5938, loss: 38433.5938\n","2021-07-01 12:10:35,175 - mmedit - INFO - Iter [14/100]\tlr_generator: 4.000e-04, eta: 0:02:07, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 48173.8555, loss: 48173.8555\n","INFO:mmedit:Iter [14/100]\tlr_generator: 4.000e-04, eta: 0:02:07, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 48173.8555, loss: 48173.8555\n","2021-07-01 12:10:35,522 - mmedit - INFO - Iter [15/100]\tlr_generator: 4.000e-04, eta: 0:01:59, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 56551.9844, loss: 56551.9844\n","INFO:mmedit:Iter [15/100]\tlr_generator: 4.000e-04, eta: 0:01:59, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 56551.9844, loss: 56551.9844\n","2021-07-01 12:10:35,866 - mmedit - INFO - Iter [16/100]\tlr_generator: 4.000e-04, eta: 0:01:52, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 45224.1250, loss: 45224.1250\n","INFO:mmedit:Iter [16/100]\tlr_generator: 4.000e-04, eta: 0:01:52, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 45224.1250, loss: 45224.1250\n","2021-07-01 12:10:36,212 - mmedit - INFO - Iter [17/100]\tlr_generator: 4.000e-04, eta: 0:01:46, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 51907.1641, loss: 51907.1641\n","INFO:mmedit:Iter [17/100]\tlr_generator: 4.000e-04, eta: 0:01:46, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 51907.1641, loss: 51907.1641\n","2021-07-01 12:10:36,560 - mmedit - INFO - Iter [18/100]\tlr_generator: 4.000e-04, eta: 0:01:40, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 44153.1641, loss: 44153.1641\n","INFO:mmedit:Iter [18/100]\tlr_generator: 4.000e-04, eta: 0:01:40, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 44153.1641, loss: 44153.1641\n","2021-07-01 12:10:36,904 - mmedit - INFO - Iter [19/100]\tlr_generator: 4.000e-04, eta: 0:01:35, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 49195.8203, loss: 49195.8203\n","INFO:mmedit:Iter [19/100]\tlr_generator: 4.000e-04, eta: 0:01:35, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 49195.8203, loss: 49195.8203\n","2021-07-01 12:10:37,249 - mmedit - INFO - Iter [20/100]\tlr_generator: 4.000e-04, eta: 0:01:31, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 60634.4844, loss: 60634.4844\n","INFO:mmedit:Iter [20/100]\tlr_generator: 4.000e-04, eta: 0:01:31, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 60634.4844, loss: 60634.4844\n","2021-07-01 12:10:37,595 - mmedit - INFO - Iter [21/100]\tlr_generator: 4.000e-04, eta: 0:01:27, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 53779.3984, loss: 53779.3984\n","INFO:mmedit:Iter [21/100]\tlr_generator: 4.000e-04, eta: 0:01:27, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 53779.3984, loss: 53779.3984\n","2021-07-01 12:10:37,939 - mmedit - INFO - Iter [22/100]\tlr_generator: 4.000e-04, eta: 0:01:23, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 45788.3594, loss: 45788.3594\n","INFO:mmedit:Iter [22/100]\tlr_generator: 4.000e-04, eta: 0:01:23, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 45788.3594, loss: 45788.3594\n","2021-07-01 12:10:38,283 - mmedit - INFO - Iter [23/100]\tlr_generator: 4.000e-04, eta: 0:01:19, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 54939.8203, loss: 54939.8203\n","INFO:mmedit:Iter [23/100]\tlr_generator: 4.000e-04, eta: 0:01:19, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 54939.8203, loss: 54939.8203\n","2021-07-01 12:10:38,628 - mmedit - INFO - Iter [24/100]\tlr_generator: 4.000e-04, eta: 0:01:16, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 46857.5234, loss: 46857.5234\n","INFO:mmedit:Iter [24/100]\tlr_generator: 4.000e-04, eta: 0:01:16, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 46857.5234, loss: 46857.5234\n","2021-07-01 12:10:38,974 - mmedit - INFO - Iter [25/100]\tlr_generator: 4.000e-04, eta: 0:01:13, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 67588.4219, loss: 67588.4219\n","INFO:mmedit:Iter [25/100]\tlr_generator: 4.000e-04, eta: 0:01:13, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 67588.4219, loss: 67588.4219\n","2021-07-01 12:10:39,318 - mmedit - INFO - Iter [26/100]\tlr_generator: 4.000e-04, eta: 0:01:10, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 40718.7812, loss: 40718.7812\n","INFO:mmedit:Iter [26/100]\tlr_generator: 4.000e-04, eta: 0:01:10, time: 0.344, data_time: 0.004, memory: 1372, loss_pix: 40718.7812, loss: 40718.7812\n","2021-07-01 12:10:39,665 - mmedit - INFO - Iter [27/100]\tlr_generator: 4.000e-04, eta: 0:01:08, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 33732.1719, loss: 33732.1719\n","INFO:mmedit:Iter [27/100]\tlr_generator: 4.000e-04, eta: 0:01:08, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 33732.1719, loss: 33732.1719\n","2021-07-01 12:10:40,011 - mmedit - INFO - Iter [28/100]\tlr_generator: 4.000e-04, eta: 0:01:05, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 56223.7891, loss: 56223.7891\n","INFO:mmedit:Iter [28/100]\tlr_generator: 4.000e-04, eta: 0:01:05, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 56223.7891, loss: 56223.7891\n","2021-07-01 12:10:40,356 - mmedit - INFO - Iter [29/100]\tlr_generator: 4.000e-04, eta: 0:01:03, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 62915.5859, loss: 62915.5859\n","INFO:mmedit:Iter [29/100]\tlr_generator: 4.000e-04, eta: 0:01:03, time: 0.345, data_time: 0.004, memory: 1372, loss_pix: 62915.5859, loss: 62915.5859\n","2021-07-01 12:10:40,703 - mmedit - INFO - Iter [30/100]\tlr_generator: 4.000e-04, eta: 0:01:01, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 52582.0352, loss: 52582.0352\n","INFO:mmedit:Iter [30/100]\tlr_generator: 4.000e-04, eta: 0:01:01, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 52582.0352, loss: 52582.0352\n","2021-07-01 12:10:41,049 - mmedit - INFO - Iter [31/100]\tlr_generator: 4.000e-04, eta: 0:00:59, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 57709.3984, loss: 57709.3984\n","INFO:mmedit:Iter [31/100]\tlr_generator: 4.000e-04, eta: 0:00:59, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 57709.3984, loss: 57709.3984\n","2021-07-01 12:10:41,396 - mmedit - INFO - Iter [32/100]\tlr_generator: 4.000e-04, eta: 0:00:57, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 43927.6094, loss: 43927.6094\n","INFO:mmedit:Iter [32/100]\tlr_generator: 4.000e-04, eta: 0:00:57, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 43927.6094, loss: 43927.6094\n","2021-07-01 12:10:41,745 - mmedit - INFO - Iter [33/100]\tlr_generator: 4.000e-04, eta: 0:00:55, time: 0.349, data_time: 0.004, memory: 1372, loss_pix: 57441.5859, loss: 57441.5859\n","INFO:mmedit:Iter [33/100]\tlr_generator: 4.000e-04, eta: 0:00:55, time: 0.349, data_time: 0.004, memory: 1372, loss_pix: 57441.5859, loss: 57441.5859\n","2021-07-01 12:10:42,097 - mmedit - INFO - Iter [34/100]\tlr_generator: 4.000e-04, eta: 0:00:53, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 34868.9102, loss: 34868.9102\n","INFO:mmedit:Iter [34/100]\tlr_generator: 4.000e-04, eta: 0:00:53, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 34868.9102, loss: 34868.9102\n","2021-07-01 12:10:42,444 - mmedit - INFO - Iter [35/100]\tlr_generator: 4.000e-04, eta: 0:00:52, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 59213.9414, loss: 59213.9414\n","INFO:mmedit:Iter [35/100]\tlr_generator: 4.000e-04, eta: 0:00:52, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 59213.9414, loss: 59213.9414\n","2021-07-01 12:10:42,790 - mmedit - INFO - Iter [36/100]\tlr_generator: 4.000e-04, eta: 0:00:50, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 41177.7812, loss: 41177.7812\n","INFO:mmedit:Iter [36/100]\tlr_generator: 4.000e-04, eta: 0:00:50, time: 0.346, data_time: 0.004, memory: 1372, loss_pix: 41177.7812, loss: 41177.7812\n","2021-07-01 12:10:43,140 - mmedit - INFO - Iter [37/100]\tlr_generator: 4.000e-04, eta: 0:00:48, time: 0.350, data_time: 0.004, memory: 1372, loss_pix: 40814.3008, loss: 40814.3008\n","INFO:mmedit:Iter [37/100]\tlr_generator: 4.000e-04, eta: 0:00:48, time: 0.350, data_time: 0.004, memory: 1372, loss_pix: 40814.3008, loss: 40814.3008\n","2021-07-01 12:10:43,490 - mmedit - INFO - Iter [38/100]\tlr_generator: 4.000e-04, eta: 0:00:47, time: 0.350, data_time: 0.004, memory: 1372, loss_pix: 59903.9648, loss: 59903.9648\n","INFO:mmedit:Iter [38/100]\tlr_generator: 4.000e-04, eta: 0:00:47, time: 0.350, data_time: 0.004, memory: 1372, loss_pix: 59903.9648, loss: 59903.9648\n","2021-07-01 12:10:43,841 - mmedit - INFO - Iter [39/100]\tlr_generator: 4.000e-04, eta: 0:00:46, time: 0.351, data_time: 0.004, memory: 1372, loss_pix: 42963.2812, loss: 42963.2812\n","INFO:mmedit:Iter [39/100]\tlr_generator: 4.000e-04, eta: 0:00:46, time: 0.351, data_time: 0.004, memory: 1372, loss_pix: 42963.2812, loss: 42963.2812\n","2021-07-01 12:10:44,193 - mmedit - INFO - Iter [40/100]\tlr_generator: 4.000e-04, eta: 0:00:44, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 40039.9062, loss: 40039.9062\n","INFO:mmedit:Iter [40/100]\tlr_generator: 4.000e-04, eta: 0:00:44, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 40039.9062, loss: 40039.9062\n","2021-07-01 12:10:44,541 - mmedit - INFO - Iter [41/100]\tlr_generator: 4.000e-04, eta: 0:00:43, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 38943.6875, loss: 38943.6875\n","INFO:mmedit:Iter [41/100]\tlr_generator: 4.000e-04, eta: 0:00:43, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 38943.6875, loss: 38943.6875\n","2021-07-01 12:10:44,895 - mmedit - INFO - Iter [42/100]\tlr_generator: 4.000e-04, eta: 0:00:42, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 60106.1445, loss: 60106.1445\n","INFO:mmedit:Iter [42/100]\tlr_generator: 4.000e-04, eta: 0:00:42, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 60106.1445, loss: 60106.1445\n","2021-07-01 12:10:45,248 - mmedit - INFO - Iter [43/100]\tlr_generator: 4.000e-04, eta: 0:00:40, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 42048.5781, loss: 42048.5781\n","INFO:mmedit:Iter [43/100]\tlr_generator: 4.000e-04, eta: 0:00:40, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 42048.5781, loss: 42048.5781\n","2021-07-01 12:10:45,595 - mmedit - INFO - Iter [44/100]\tlr_generator: 4.000e-04, eta: 0:00:39, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 53089.7695, loss: 53089.7695\n","INFO:mmedit:Iter [44/100]\tlr_generator: 4.000e-04, eta: 0:00:39, time: 0.347, data_time: 0.004, memory: 1372, loss_pix: 53089.7695, loss: 53089.7695\n","2021-07-01 12:10:45,950 - mmedit - INFO - Iter [45/100]\tlr_generator: 4.000e-04, eta: 0:00:38, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 68916.9375, loss: 68916.9375\n","INFO:mmedit:Iter [45/100]\tlr_generator: 4.000e-04, eta: 0:00:38, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 68916.9375, loss: 68916.9375\n","2021-07-01 12:10:46,301 - mmedit - INFO - Iter [46/100]\tlr_generator: 4.000e-04, eta: 0:00:37, time: 0.351, data_time: 0.004, memory: 1372, loss_pix: 49331.9609, loss: 49331.9609\n","INFO:mmedit:Iter [46/100]\tlr_generator: 4.000e-04, eta: 0:00:37, time: 0.351, data_time: 0.004, memory: 1372, loss_pix: 49331.9609, loss: 49331.9609\n","2021-07-01 12:10:46,649 - mmedit - INFO - Iter [47/100]\tlr_generator: 4.000e-04, eta: 0:00:36, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 47692.4375, loss: 47692.4375\n","INFO:mmedit:Iter [47/100]\tlr_generator: 4.000e-04, eta: 0:00:36, time: 0.348, data_time: 0.004, memory: 1372, loss_pix: 47692.4375, loss: 47692.4375\n","2021-07-01 12:10:47,003 - mmedit - INFO - Iter [48/100]\tlr_generator: 4.000e-04, eta: 0:00:35, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 56692.4531, loss: 56692.4531\n","INFO:mmedit:Iter [48/100]\tlr_generator: 4.000e-04, eta: 0:00:35, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 56692.4531, loss: 56692.4531\n","2021-07-01 12:10:47,356 - mmedit - INFO - Iter [49/100]\tlr_generator: 4.000e-04, eta: 0:00:34, time: 0.353, data_time: 0.004, memory: 1372, loss_pix: 54549.1875, loss: 54549.1875\n","INFO:mmedit:Iter [49/100]\tlr_generator: 4.000e-04, eta: 0:00:34, time: 0.353, data_time: 0.004, memory: 1372, loss_pix: 54549.1875, loss: 54549.1875\n","[>>] 22/22, 0.9 task/s, elapsed: 26s, ETA:     0s\n","\n","2021-07-01 12:11:14,231 - mmedit - INFO - Iter(val) [50]\tPSNR: 20.9725, SSIM: 0.5283\n","INFO:mmedit:Iter(val) [50]\tPSNR: 20.9725, SSIM: 0.5283\n","2021-07-01 12:11:14,578 - mmedit - INFO - Iter [51/100]\tlr_generator: 4.000e-04, eta: 0:00:57, time: 26.874, data_time: 26.530, memory: 1372, loss_pix: 39771.0391, loss: 39771.0391\n","INFO:mmedit:Iter [51/100]\tlr_generator: 4.000e-04, eta: 0:00:57, time: 26.874, data_time: 26.530, memory: 1372, loss_pix: 39771.0391, loss: 39771.0391\n","2021-07-01 12:11:14,930 - mmedit - INFO - Iter [52/100]\tlr_generator: 4.000e-04, eta: 0:00:55, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 53194.4766, loss: 53194.4766\n","INFO:mmedit:Iter [52/100]\tlr_generator: 4.000e-04, eta: 0:00:55, time: 0.352, data_time: 0.004, memory: 1372, loss_pix: 53194.4766, loss: 53194.4766\n","2021-07-01 12:11:15,289 - mmedit - INFO - Iter [53/100]\tlr_generator: 4.000e-04, eta: 0:00:53, time: 0.358, data_time: 0.003, memory: 1372, loss_pix: 60388.1523, loss: 60388.1523\n","INFO:mmedit:Iter [53/100]\tlr_generator: 4.000e-04, eta: 0:00:53, time: 0.358, data_time: 0.003, memory: 1372, loss_pix: 60388.1523, loss: 60388.1523\n","2021-07-01 12:11:15,642 - mmedit - INFO - Iter [54/100]\tlr_generator: 4.000e-04, eta: 0:00:51, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 48352.9922, loss: 48352.9922\n","INFO:mmedit:Iter [54/100]\tlr_generator: 4.000e-04, eta: 0:00:51, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 48352.9922, loss: 48352.9922\n","2021-07-01 12:11:15,993 - mmedit - INFO - Iter [55/100]\tlr_generator: 4.000e-04, eta: 0:00:50, time: 0.350, data_time: 0.003, memory: 1372, loss_pix: 55056.6797, loss: 55056.6797\n","INFO:mmedit:Iter [55/100]\tlr_generator: 4.000e-04, eta: 0:00:50, time: 0.350, data_time: 0.003, memory: 1372, loss_pix: 55056.6797, loss: 55056.6797\n","2021-07-01 12:11:16,354 - mmedit - INFO - Iter [56/100]\tlr_generator: 4.000e-04, eta: 0:00:48, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 53869.2344, loss: 53869.2344\n","INFO:mmedit:Iter [56/100]\tlr_generator: 4.000e-04, eta: 0:00:48, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 53869.2344, loss: 53869.2344\n","2021-07-01 12:11:16,712 - mmedit - INFO - Iter [57/100]\tlr_generator: 4.000e-04, eta: 0:00:46, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 38026.5781, loss: 38026.5781\n","INFO:mmedit:Iter [57/100]\tlr_generator: 4.000e-04, eta: 0:00:46, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 38026.5781, loss: 38026.5781\n","2021-07-01 12:11:17,065 - mmedit - INFO - Iter [58/100]\tlr_generator: 4.000e-04, eta: 0:00:45, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 54388.4375, loss: 54388.4375\n","INFO:mmedit:Iter [58/100]\tlr_generator: 4.000e-04, eta: 0:00:45, time: 0.354, data_time: 0.004, memory: 1372, loss_pix: 54388.4375, loss: 54388.4375\n","2021-07-01 12:11:17,425 - mmedit - INFO - Iter [59/100]\tlr_generator: 4.000e-04, eta: 0:00:43, time: 0.359, data_time: 0.004, memory: 1372, loss_pix: 55608.8125, loss: 55608.8125\n","INFO:mmedit:Iter [59/100]\tlr_generator: 4.000e-04, eta: 0:00:43, time: 0.359, data_time: 0.004, memory: 1372, loss_pix: 55608.8125, loss: 55608.8125\n","2021-07-01 12:11:17,780 - mmedit - INFO - Iter [60/100]\tlr_generator: 4.000e-04, eta: 0:00:42, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 43325.0195, loss: 43325.0195\n","INFO:mmedit:Iter [60/100]\tlr_generator: 4.000e-04, eta: 0:00:42, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 43325.0195, loss: 43325.0195\n","2021-07-01 12:11:18,135 - mmedit - INFO - Iter [61/100]\tlr_generator: 4.000e-04, eta: 0:00:40, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 47598.5742, loss: 47598.5742\n","INFO:mmedit:Iter [61/100]\tlr_generator: 4.000e-04, eta: 0:00:40, time: 0.355, data_time: 0.004, memory: 1372, loss_pix: 47598.5742, loss: 47598.5742\n","2021-07-01 12:11:18,495 - mmedit - INFO - Iter [62/100]\tlr_generator: 4.000e-04, eta: 0:00:39, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 43414.2422, loss: 43414.2422\n","INFO:mmedit:Iter [62/100]\tlr_generator: 4.000e-04, eta: 0:00:39, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 43414.2422, loss: 43414.2422\n","2021-07-01 12:11:18,851 - mmedit - INFO - Iter [63/100]\tlr_generator: 4.000e-04, eta: 0:00:37, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 53083.8750, loss: 53083.8750\n","INFO:mmedit:Iter [63/100]\tlr_generator: 4.000e-04, eta: 0:00:37, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 53083.8750, loss: 53083.8750\n","2021-07-01 12:11:19,210 - mmedit - INFO - Iter [64/100]\tlr_generator: 4.000e-04, eta: 0:00:36, time: 0.359, data_time: 0.004, memory: 1372, loss_pix: 43161.5781, loss: 43161.5781\n","INFO:mmedit:Iter [64/100]\tlr_generator: 4.000e-04, eta: 0:00:36, time: 0.359, data_time: 0.004, memory: 1372, loss_pix: 43161.5781, loss: 43161.5781\n","2021-07-01 12:11:19,567 - mmedit - INFO - Iter [65/100]\tlr_generator: 4.000e-04, eta: 0:00:34, time: 0.356, data_time: 0.003, memory: 1372, loss_pix: 56597.0156, loss: 56597.0156\n","INFO:mmedit:Iter [65/100]\tlr_generator: 4.000e-04, eta: 0:00:34, time: 0.356, data_time: 0.003, memory: 1372, loss_pix: 56597.0156, loss: 56597.0156\n","2021-07-01 12:11:19,923 - mmedit - INFO - Iter [66/100]\tlr_generator: 4.000e-04, eta: 0:00:33, time: 0.356, data_time: 0.004, memory: 1372, loss_pix: 52818.3125, loss: 52818.3125\n","INFO:mmedit:Iter [66/100]\tlr_generator: 4.000e-04, eta: 0:00:33, time: 0.356, data_time: 0.004, memory: 1372, loss_pix: 52818.3125, loss: 52818.3125\n","2021-07-01 12:11:20,286 - mmedit - INFO - Iter [67/100]\tlr_generator: 4.000e-04, eta: 0:00:32, time: 0.363, data_time: 0.003, memory: 1372, loss_pix: 50922.8828, loss: 50922.8828\n","INFO:mmedit:Iter [67/100]\tlr_generator: 4.000e-04, eta: 0:00:32, time: 0.363, data_time: 0.003, memory: 1372, loss_pix: 50922.8828, loss: 50922.8828\n","2021-07-01 12:11:20,644 - mmedit - INFO - Iter [68/100]\tlr_generator: 4.000e-04, eta: 0:00:31, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 42469.6133, loss: 42469.6133\n","INFO:mmedit:Iter [68/100]\tlr_generator: 4.000e-04, eta: 0:00:31, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 42469.6133, loss: 42469.6133\n","2021-07-01 12:11:21,000 - mmedit - INFO - Iter [69/100]\tlr_generator: 4.000e-04, eta: 0:00:29, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 54508.9062, loss: 54508.9062\n","INFO:mmedit:Iter [69/100]\tlr_generator: 4.000e-04, eta: 0:00:29, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 54508.9062, loss: 54508.9062\n","2021-07-01 12:11:21,359 - mmedit - INFO - Iter [70/100]\tlr_generator: 4.000e-04, eta: 0:00:28, time: 0.358, data_time: 0.003, memory: 1372, loss_pix: 56221.5938, loss: 56221.5938\n","INFO:mmedit:Iter [70/100]\tlr_generator: 4.000e-04, eta: 0:00:28, time: 0.358, data_time: 0.003, memory: 1372, loss_pix: 56221.5938, loss: 56221.5938\n","2021-07-01 12:11:21,719 - mmedit - INFO - Iter [71/100]\tlr_generator: 4.000e-04, eta: 0:00:27, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 56114.1094, loss: 56114.1094\n","INFO:mmedit:Iter [71/100]\tlr_generator: 4.000e-04, eta: 0:00:27, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 56114.1094, loss: 56114.1094\n","2021-07-01 12:11:22,072 - mmedit - INFO - Iter [72/100]\tlr_generator: 4.000e-04, eta: 0:00:26, time: 0.352, data_time: 0.003, memory: 1372, loss_pix: 51000.3047, loss: 51000.3047\n","INFO:mmedit:Iter [72/100]\tlr_generator: 4.000e-04, eta: 0:00:26, time: 0.352, data_time: 0.003, memory: 1372, loss_pix: 51000.3047, loss: 51000.3047\n","2021-07-01 12:11:22,434 - mmedit - INFO - Iter [73/100]\tlr_generator: 4.000e-04, eta: 0:00:25, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 59626.5625, loss: 59626.5625\n","INFO:mmedit:Iter [73/100]\tlr_generator: 4.000e-04, eta: 0:00:25, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 59626.5625, loss: 59626.5625\n","2021-07-01 12:11:22,798 - mmedit - INFO - Iter [74/100]\tlr_generator: 4.000e-04, eta: 0:00:23, time: 0.364, data_time: 0.003, memory: 1372, loss_pix: 60362.0703, loss: 60362.0703\n","INFO:mmedit:Iter [74/100]\tlr_generator: 4.000e-04, eta: 0:00:23, time: 0.364, data_time: 0.003, memory: 1372, loss_pix: 60362.0703, loss: 60362.0703\n","2021-07-01 12:11:23,158 - mmedit - INFO - Iter [75/100]\tlr_generator: 4.000e-04, eta: 0:00:22, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 53156.9258, loss: 53156.9258\n","INFO:mmedit:Iter [75/100]\tlr_generator: 4.000e-04, eta: 0:00:22, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 53156.9258, loss: 53156.9258\n","2021-07-01 12:11:23,513 - mmedit - INFO - Iter [76/100]\tlr_generator: 4.000e-04, eta: 0:00:21, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 46747.7148, loss: 46747.7148\n","INFO:mmedit:Iter [76/100]\tlr_generator: 4.000e-04, eta: 0:00:21, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 46747.7148, loss: 46747.7148\n","2021-07-01 12:11:23,875 - mmedit - INFO - Iter [77/100]\tlr_generator: 4.000e-04, eta: 0:00:20, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 41265.0078, loss: 41265.0078\n","INFO:mmedit:Iter [77/100]\tlr_generator: 4.000e-04, eta: 0:00:20, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 41265.0078, loss: 41265.0078\n","2021-07-01 12:11:24,236 - mmedit - INFO - Iter [78/100]\tlr_generator: 4.000e-04, eta: 0:00:19, time: 0.361, data_time: 0.003, memory: 1372, loss_pix: 65673.9844, loss: 65673.9844\n","INFO:mmedit:Iter [78/100]\tlr_generator: 4.000e-04, eta: 0:00:19, time: 0.361, data_time: 0.003, memory: 1372, loss_pix: 65673.9844, loss: 65673.9844\n","2021-07-01 12:11:24,597 - mmedit - INFO - Iter [79/100]\tlr_generator: 4.000e-04, eta: 0:00:18, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 43488.8594, loss: 43488.8594\n","INFO:mmedit:Iter [79/100]\tlr_generator: 4.000e-04, eta: 0:00:18, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 43488.8594, loss: 43488.8594\n","2021-07-01 12:11:24,951 - mmedit - INFO - Iter [80/100]\tlr_generator: 4.000e-04, eta: 0:00:17, time: 0.354, data_time: 0.003, memory: 1372, loss_pix: 57209.5312, loss: 57209.5312\n","INFO:mmedit:Iter [80/100]\tlr_generator: 4.000e-04, eta: 0:00:17, time: 0.354, data_time: 0.003, memory: 1372, loss_pix: 57209.5312, loss: 57209.5312\n","2021-07-01 12:11:25,313 - mmedit - INFO - Iter [81/100]\tlr_generator: 4.000e-04, eta: 0:00:16, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 46945.9297, loss: 46945.9297\n","INFO:mmedit:Iter [81/100]\tlr_generator: 4.000e-04, eta: 0:00:16, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 46945.9297, loss: 46945.9297\n","2021-07-01 12:11:25,677 - mmedit - INFO - Iter [82/100]\tlr_generator: 4.000e-04, eta: 0:00:15, time: 0.364, data_time: 0.004, memory: 1372, loss_pix: 49951.7031, loss: 49951.7031\n","INFO:mmedit:Iter [82/100]\tlr_generator: 4.000e-04, eta: 0:00:15, time: 0.364, data_time: 0.004, memory: 1372, loss_pix: 49951.7031, loss: 49951.7031\n","2021-07-01 12:11:26,038 - mmedit - INFO - Iter [83/100]\tlr_generator: 4.000e-04, eta: 0:00:14, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 41923.9453, loss: 41923.9453\n","INFO:mmedit:Iter [83/100]\tlr_generator: 4.000e-04, eta: 0:00:14, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 41923.9453, loss: 41923.9453\n","2021-07-01 12:11:26,393 - mmedit - INFO - Iter [84/100]\tlr_generator: 4.000e-04, eta: 0:00:13, time: 0.354, data_time: 0.003, memory: 1372, loss_pix: 42797.9297, loss: 42797.9297\n","INFO:mmedit:Iter [84/100]\tlr_generator: 4.000e-04, eta: 0:00:13, time: 0.354, data_time: 0.003, memory: 1372, loss_pix: 42797.9297, loss: 42797.9297\n","2021-07-01 12:11:26,753 - mmedit - INFO - Iter [85/100]\tlr_generator: 4.000e-04, eta: 0:00:12, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 55596.6211, loss: 55596.6211\n","INFO:mmedit:Iter [85/100]\tlr_generator: 4.000e-04, eta: 0:00:12, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 55596.6211, loss: 55596.6211\n","2021-07-01 12:11:27,115 - mmedit - INFO - Iter [86/100]\tlr_generator: 4.000e-04, eta: 0:00:11, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 39217.5938, loss: 39217.5938\n","INFO:mmedit:Iter [86/100]\tlr_generator: 4.000e-04, eta: 0:00:11, time: 0.361, data_time: 0.004, memory: 1372, loss_pix: 39217.5938, loss: 39217.5938\n","2021-07-01 12:11:27,472 - mmedit - INFO - Iter [87/100]\tlr_generator: 4.000e-04, eta: 0:00:10, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 45385.6719, loss: 45385.6719\n","INFO:mmedit:Iter [87/100]\tlr_generator: 4.000e-04, eta: 0:00:10, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 45385.6719, loss: 45385.6719\n","2021-07-01 12:11:27,830 - mmedit - INFO - Iter [88/100]\tlr_generator: 4.000e-04, eta: 0:00:09, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 52986.2578, loss: 52986.2578\n","INFO:mmedit:Iter [88/100]\tlr_generator: 4.000e-04, eta: 0:00:09, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 52986.2578, loss: 52986.2578\n","2021-07-01 12:11:28,189 - mmedit - INFO - Iter [89/100]\tlr_generator: 4.000e-04, eta: 0:00:09, time: 0.360, data_time: 0.004, memory: 1372, loss_pix: 42257.4453, loss: 42257.4453\n","INFO:mmedit:Iter [89/100]\tlr_generator: 4.000e-04, eta: 0:00:09, time: 0.360, data_time: 0.004, memory: 1372, loss_pix: 42257.4453, loss: 42257.4453\n","2021-07-01 12:11:28,553 - mmedit - INFO - Iter [90/100]\tlr_generator: 4.000e-04, eta: 0:00:08, time: 0.364, data_time: 0.003, memory: 1372, loss_pix: 57483.0820, loss: 57483.0820\n","INFO:mmedit:Iter [90/100]\tlr_generator: 4.000e-04, eta: 0:00:08, time: 0.364, data_time: 0.003, memory: 1372, loss_pix: 57483.0820, loss: 57483.0820\n","2021-07-01 12:11:28,910 - mmedit - INFO - Iter [91/100]\tlr_generator: 4.000e-04, eta: 0:00:07, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 47986.6094, loss: 47986.6094\n","INFO:mmedit:Iter [91/100]\tlr_generator: 4.000e-04, eta: 0:00:07, time: 0.358, data_time: 0.004, memory: 1372, loss_pix: 47986.6094, loss: 47986.6094\n","2021-07-01 12:11:29,266 - mmedit - INFO - Iter [92/100]\tlr_generator: 4.000e-04, eta: 0:00:06, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 42591.9805, loss: 42591.9805\n","INFO:mmedit:Iter [92/100]\tlr_generator: 4.000e-04, eta: 0:00:06, time: 0.355, data_time: 0.003, memory: 1372, loss_pix: 42591.9805, loss: 42591.9805\n","2021-07-01 12:11:29,628 - mmedit - INFO - Iter [93/100]\tlr_generator: 4.000e-04, eta: 0:00:05, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 44414.8047, loss: 44414.8047\n","INFO:mmedit:Iter [93/100]\tlr_generator: 4.000e-04, eta: 0:00:05, time: 0.362, data_time: 0.004, memory: 1372, loss_pix: 44414.8047, loss: 44414.8047\n","2021-07-01 12:11:29,989 - mmedit - INFO - Iter [94/100]\tlr_generator: 4.000e-04, eta: 0:00:04, time: 0.360, data_time: 0.003, memory: 1372, loss_pix: 55887.0938, loss: 55887.0938\n","INFO:mmedit:Iter [94/100]\tlr_generator: 4.000e-04, eta: 0:00:04, time: 0.360, data_time: 0.003, memory: 1372, loss_pix: 55887.0938, loss: 55887.0938\n","2021-07-01 12:11:30,345 - mmedit - INFO - Iter [95/100]\tlr_generator: 4.000e-04, eta: 0:00:03, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 50413.8594, loss: 50413.8594\n","INFO:mmedit:Iter [95/100]\tlr_generator: 4.000e-04, eta: 0:00:03, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 50413.8594, loss: 50413.8594\n","2021-07-01 12:11:30,704 - mmedit - INFO - Iter [96/100]\tlr_generator: 4.000e-04, eta: 0:00:03, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 56848.2617, loss: 56848.2617\n","INFO:mmedit:Iter [96/100]\tlr_generator: 4.000e-04, eta: 0:00:03, time: 0.357, data_time: 0.003, memory: 1372, loss_pix: 56848.2617, loss: 56848.2617\n","2021-07-01 12:11:31,067 - mmedit - INFO - Iter [97/100]\tlr_generator: 4.000e-04, eta: 0:00:02, time: 0.364, data_time: 0.004, memory: 1372, loss_pix: 48228.6172, loss: 48228.6172\n","INFO:mmedit:Iter [97/100]\tlr_generator: 4.000e-04, eta: 0:00:02, time: 0.364, data_time: 0.004, memory: 1372, loss_pix: 48228.6172, loss: 48228.6172\n","2021-07-01 12:11:31,425 - mmedit - INFO - Iter [98/100]\tlr_generator: 4.000e-04, eta: 0:00:01, time: 0.359, data_time: 0.003, memory: 1372, loss_pix: 46352.1172, loss: 46352.1172\n","INFO:mmedit:Iter [98/100]\tlr_generator: 4.000e-04, eta: 0:00:01, time: 0.359, data_time: 0.003, memory: 1372, loss_pix: 46352.1172, loss: 46352.1172\n","2021-07-01 12:11:31,782 - mmedit - INFO - Iter [99/100]\tlr_generator: 4.000e-04, eta: 0:00:00, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 56967.3750, loss: 56967.3750\n","INFO:mmedit:Iter [99/100]\tlr_generator: 4.000e-04, eta: 0:00:00, time: 0.357, data_time: 0.004, memory: 1372, loss_pix: 56967.3750, loss: 56967.3750\n","[>>] 22/22, 0.9 task/s, elapsed: 26s, ETA:     0s\n","\n","2021-07-01 12:11:58,494 - mmedit - INFO - Saving checkpoint at 100 iterations\n","INFO:mmedit:Saving checkpoint at 100 iterations\n","2021-07-01 12:11:58,598 - mmedit - INFO - Iter(val) [100]\tPSNR: 21.3930, SSIM: 0.5684\n","INFO:mmedit:Iter(val) [100]\tPSNR: 21.3930, SSIM: 0.5684\n"]}],"source":["# EDVR (Video Super-Resolution - Sliding Window)\n","!./tools/dist_train.sh ./demo_files/demo_config_EDVR.py 1 "]},{"cell_type":"code","execution_count":null,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"elapsed":197033,"status":"ok","timestamp":1625141428032,"user":{"displayName":"Kelvin C.K. Chan","photoUrl":"","userId":"05911692378028575851"},"user_tz":-480},"id":"_RdqmlT6qgt2","outputId":"b951b426-e06c-4f31-db01-449333eab333"},"outputs":[{"name":"stdout","output_type":"stream","text":["2021-07-01 12:06:47,253 - mmedit - INFO - Environment info:\n","------------------------------------------------------------\n","sys.platform: linux\n","Python: 3.7.10 (default, May  3 2021, 02:48:31) [GCC 7.5.0]\n","CUDA available: True\n","GPU 0: Tesla T4\n","CUDA_HOME: /usr/local/cuda\n","NVCC: Build cuda_11.0_bu.TC445_37.28845127_0\n","GCC: gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0\n","PyTorch: 1.7.0+cu110\n","PyTorch compiling details: PyTorch built with:\n","  - GCC 7.3\n","  - C++ Version: 201402\n","  - Intel(R) Math Kernel Library Version 2020.0.0 Product Build 20191122 for Intel(R) 64 architecture applications\n","  - Intel(R) MKL-DNN v1.6.0 (Git Hash 5ef631a030a6f73131c77892041042805a06064f)\n","  - OpenMP 201511 (a.k.a. OpenMP 4.5)\n","  - NNPACK is enabled\n","  - CPU capability usage: AVX2\n","  - CUDA Runtime 11.0\n","  - NVCC architecture flags: -gencode;arch=compute_37,code=sm_37;-gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80\n","  - CuDNN 8.0.4\n","  - Magma 2.5.2\n","  - Build settings: BLAS=MKL, BUILD_TYPE=Release, CXX_FLAGS= -Wno-deprecated -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -fopenmp -DNDEBUG -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DUSE_VULKAN_WRAPPER -O2 -fPIC -Wno-narrowing -Wall -Wextra -Werror=return-type -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wno-unused-function -Wno-unused-result -Wno-unused-local-typedefs -Wno-strict-overflow -Wno-strict-aliasing -Wno-error=deprecated-declarations -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=redundant-decls -Wno-error=old-style-cast -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Wno-stringop-overflow, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, USE_CUDA=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=ON, USE_NNPACK=ON, USE_OPENMP=ON, \n","\n","TorchVision: 0.8.0\n","OpenCV: 4.1.2\n","MMCV: 1.3.5\n","MMCV Compiler: GCC 7.3\n","MMCV CUDA Compiler: 11.0\n","MMEditing: 0.8.0+7f4fa79\n","------------------------------------------------------------\n","\n","2021-07-01 12:06:47,253 - mmedit - INFO - Distributed training: True\n","2021-07-01 12:06:47,254 - mmedit - INFO - mmedit Version: 0.8.0\n","2021-07-01 12:06:47,254 - mmedit - INFO - Config:\n","/content/mmediting/demo_files/demo_config_BasicVSR.py\n","exp_name = 'basicvsr_demo'\n","\n","# model settings\n","model = dict(\n","    type='BasicVSR',\n","    generator=dict(\n","        type='BasicVSRNet',\n","        mid_channels=64,\n","        num_blocks=30,\n","        spynet_pretrained='https://download.openmmlab.com/mmediting/restorers/'\n","        'basicvsr/spynet_20210409-c6c1bd09.pth'),\n","    pixel_loss=dict(type='CharbonnierLoss', loss_weight=1.0, reduction='mean'))\n","# model training and testing settings\n","train_cfg = dict(fix_iter=5000)\n","test_cfg = dict(metrics=['PSNR', 'SSIM'], crop_border=0)\n","\n","# dataset settings\n","train_dataset_type = 'SRFolderMultipleGTDataset'\n","val_dataset_type = 'SRFolderMultipleGTDataset'\n","\n","train_pipeline = [\n","    dict(type='GenerateSegmentIndices', interval_list=[1]),\n","    dict(type='TemporalReverse', keys='lq_path', reverse_ratio=0),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        channel_order='rgb'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        channel_order='rgb'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(type='PairedRandomCrop', gt_patch_size=256),\n","    dict(\n","        type='Flip', keys=['lq', 'gt'], flip_ratio=0.5,\n","        direction='horizontal'),\n","    dict(type='Flip', keys=['lq', 'gt'], flip_ratio=0.5, direction='vertical'),\n","    dict(type='RandomTransposeHW', keys=['lq', 'gt'], transpose_ratio=0.5),\n","    dict(type='FramesToTensor', keys=['lq', 'gt']),\n","    dict(type='Collect', keys=['lq', 'gt'], meta_keys=['lq_path', 'gt_path'])\n","]\n","\n","test_pipeline = [\n","    dict(type='GenerateSegmentIndices', interval_list=[1]),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='lq',\n","        channel_order='rgb'),\n","    dict(\n","        type='LoadImageFromFileList',\n","        io_backend='disk',\n","        key='gt',\n","        channel_order='rgb'),\n","    dict(type='RescaleToZeroOne', keys=['lq', 'gt']),\n","    dict(type='FramesToTensor', keys=['lq', 'gt']),\n","    dict(\n","        type='Collect',\n","        keys=['lq', 'gt'],\n","        meta_keys=['lq_path', 'gt_path', 'key'])\n","]\n","\n","data = dict(\n","    workers_per_gpu=6,\n","    train_dataloader=dict(samples_per_gpu=4, drop_last=True),  # 2 gpus\n","    val_dataloader=dict(samples_per_gpu=1),\n","    test_dataloader=dict(samples_per_gpu=1, workers_per_gpu=1),\n","\n","    # train\n","    train=dict(\n","        type='RepeatDataset',\n","        times=1000,\n","        dataset=dict(\n","            type=train_dataset_type,\n","            lq_folder='./demo_files/lq_sequences',\n","            gt_folder='./demo_files/gt_sequences',\n","            num_input_frames=5,\n","            pipeline=train_pipeline,\n","            scale=4,\n","            test_mode=False)),\n","    # val\n","    val=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_sequences',\n","        gt_folder='./demo_files/gt_sequences',\n","        pipeline=test_pipeline,\n","        scale=4,\n","        test_mode=True),\n","    # test\n","    test=dict(\n","        type=val_dataset_type,\n","        lq_folder='./demo_files/lq_sequences',\n","        gt_folder='./demo_files/gt_sequences',\n","        pipeline=test_pipeline,\n","        scale=4,\n","        test_mode=True),\n",")\n","\n","# optimizer\n","optimizers = dict(\n","    generator=dict(\n","        type='Adam',\n","        lr=2e-4,\n","        betas=(0.9, 0.99),\n","        paramwise_cfg=dict(custom_keys={'spynet': dict(lr_mult=0.125)})))\n","\n","# learning policy\n","total_iters = 100\n","lr_config = dict(\n","    policy='CosineRestart',\n","    by_epoch=False,\n","    periods=[300000],\n","    restart_weights=[1],\n","    min_lr=1e-7)\n","\n","checkpoint_config = dict(interval=5000, save_optimizer=True, by_epoch=False)\n","# remove gpu_collect=True in non distributed training\n","evaluation = dict(interval=50, save_image=False, gpu_collect=True)\n","log_config = dict(\n","    interval=1,\n","    hooks=[\n","        dict(type='TextLoggerHook', by_epoch=False),\n","        # dict(type='TensorboardLoggerHook'),\n","    ])\n","visual_config = None\n","\n","# runtime settings\n","dist_params = dict(backend='nccl')\n","log_level = 'INFO'\n","work_dir = f'./work_dirs/{exp_name}'\n","load_from = None\n","resume_from = None\n","workflow = [('train', 1)]\n","find_unused_parameters = True\n","\n","2021-07-01 12:06:47,291 - mmedit - INFO - Use load_from_http loader\n","2021-07-01 12:06:47,569 - mmedit - INFO - Start running, host: root@fce870c778f5, work_dir: /content/mmediting/work_dirs/basicvsr_demo\n","2021-07-01 12:06:47,569 - mmedit - INFO - workflow: [('train', 1)], max: 100 iters\n","2021-07-01 12:07:14,210 - mmedit - INFO - Iter [1/100]\tlr_generator: 2.500e-05, eta: 0:42:52, time: 25.981, data_time: 24.045, memory: 3464, loss_pix: 0.0634, loss: 0.0634\n","2021-07-01 12:07:15,171 - mmedit - INFO - Iter [2/100]\tlr_generator: 2.500e-05, eta: 0:22:00, time: 0.961, data_time: 0.011, memory: 3518, loss_pix: 0.0556, loss: 0.0556\n","2021-07-01 12:07:16,052 - mmedit - INFO - Iter [3/100]\tlr_generator: 2.500e-05, eta: 0:14:59, time: 0.881, data_time: 0.003, memory: 3518, loss_pix: 0.0476, loss: 0.0476\n","2021-07-01 12:07:16,940 - mmedit - INFO - Iter [4/100]\tlr_generator: 2.500e-05, eta: 0:11:29, time: 0.888, data_time: 0.003, memory: 3518, loss_pix: 0.0673, loss: 0.0673\n","2021-07-01 12:07:17,829 - mmedit - INFO - Iter [5/100]\tlr_generator: 2.500e-05, eta: 0:09:22, time: 0.889, data_time: 0.003, memory: 3518, loss_pix: 0.0796, loss: 0.0796\n","2021-07-01 12:07:18,712 - mmedit - INFO - Iter [6/100]\tlr_generator: 2.500e-05, eta: 0:07:57, time: 0.884, data_time: 0.004, memory: 3518, loss_pix: 0.0680, loss: 0.0680\n","2021-07-01 12:07:19,594 - mmedit - INFO - Iter [7/100]\tlr_generator: 2.500e-05, eta: 0:06:56, time: 0.882, data_time: 0.003, memory: 3518, loss_pix: 0.0607, loss: 0.0607\n","2021-07-01 12:07:20,481 - mmedit - INFO - Iter [8/100]\tlr_generator: 2.500e-05, eta: 0:06:10, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0598, loss: 0.0598\n","2021-07-01 12:07:21,361 - mmedit - INFO - Iter [9/100]\tlr_generator: 2.500e-05, eta: 0:05:35, time: 0.880, data_time: 0.003, memory: 3518, loss_pix: 0.0664, loss: 0.0664\n","2021-07-01 12:07:22,274 - mmedit - INFO - Iter [10/100]\tlr_generator: 2.500e-05, eta: 0:05:06, time: 0.913, data_time: 0.003, memory: 3518, loss_pix: 0.0687, loss: 0.0687\n","2021-07-01 12:07:23,161 - mmedit - INFO - Iter [11/100]\tlr_generator: 2.500e-05, eta: 0:04:42, time: 0.887, data_time: 0.005, memory: 3518, loss_pix: 0.0771, loss: 0.0771\n","2021-07-01 12:07:24,058 - mmedit - INFO - Iter [12/100]\tlr_generator: 2.500e-05, eta: 0:04:22, time: 0.897, data_time: 0.003, memory: 3518, loss_pix: 0.0521, loss: 0.0521\n","2021-07-01 12:07:24,944 - mmedit - INFO - Iter [13/100]\tlr_generator: 2.500e-05, eta: 0:04:05, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0675, loss: 0.0675\n","2021-07-01 12:07:25,835 - mmedit - INFO - Iter [14/100]\tlr_generator: 2.500e-05, eta: 0:03:51, time: 0.891, data_time: 0.003, memory: 3518, loss_pix: 0.0515, loss: 0.0515\n","2021-07-01 12:07:26,723 - mmedit - INFO - Iter [15/100]\tlr_generator: 2.500e-05, eta: 0:03:38, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0674, loss: 0.0674\n","2021-07-01 12:07:27,609 - mmedit - INFO - Iter [16/100]\tlr_generator: 2.500e-05, eta: 0:03:26, time: 0.886, data_time: 0.003, memory: 3518, loss_pix: 0.0579, loss: 0.0579\n","2021-07-01 12:07:28,498 - mmedit - INFO - Iter [17/100]\tlr_generator: 2.500e-05, eta: 0:03:16, time: 0.889, data_time: 0.003, memory: 3518, loss_pix: 0.0670, loss: 0.0670\n","2021-07-01 12:07:29,388 - mmedit - INFO - Iter [18/100]\tlr_generator: 2.500e-05, eta: 0:03:07, time: 0.890, data_time: 0.003, memory: 3518, loss_pix: 0.0663, loss: 0.0663\n","2021-07-01 12:07:30,284 - mmedit - INFO - Iter [19/100]\tlr_generator: 2.500e-05, eta: 0:02:59, time: 0.896, data_time: 0.003, memory: 3518, loss_pix: 0.0633, loss: 0.0633\n","2021-07-01 12:07:31,176 - mmedit - INFO - Iter [20/100]\tlr_generator: 2.500e-05, eta: 0:02:51, time: 0.891, data_time: 0.003, memory: 3518, loss_pix: 0.0482, loss: 0.0482\n","2021-07-01 12:07:32,073 - mmedit - INFO - Iter [21/100]\tlr_generator: 2.500e-05, eta: 0:02:44, time: 0.898, data_time: 0.003, memory: 3518, loss_pix: 0.0743, loss: 0.0743\n","2021-07-01 12:07:32,966 - mmedit - INFO - Iter [22/100]\tlr_generator: 2.500e-05, eta: 0:02:38, time: 0.893, data_time: 0.003, memory: 3518, loss_pix: 0.0690, loss: 0.0690\n","2021-07-01 12:07:33,858 - mmedit - INFO - Iter [23/100]\tlr_generator: 2.500e-05, eta: 0:02:32, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0437, loss: 0.0437\n","2021-07-01 12:07:34,750 - mmedit - INFO - Iter [24/100]\tlr_generator: 2.500e-05, eta: 0:02:27, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0579, loss: 0.0579\n","2021-07-01 12:07:35,642 - mmedit - INFO - Iter [25/100]\tlr_generator: 2.500e-05, eta: 0:02:22, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0781, loss: 0.0781\n","2021-07-01 12:07:36,533 - mmedit - INFO - Iter [26/100]\tlr_generator: 2.500e-05, eta: 0:02:17, time: 0.891, data_time: 0.003, memory: 3518, loss_pix: 0.0614, loss: 0.0614\n","2021-07-01 12:07:37,427 - mmedit - INFO - Iter [27/100]\tlr_generator: 2.500e-05, eta: 0:02:13, time: 0.894, data_time: 0.003, memory: 3518, loss_pix: 0.0688, loss: 0.0688\n","2021-07-01 12:07:38,321 - mmedit - INFO - Iter [28/100]\tlr_generator: 2.500e-05, eta: 0:02:08, time: 0.894, data_time: 0.003, memory: 3518, loss_pix: 0.0567, loss: 0.0567\n","2021-07-01 12:07:39,212 - mmedit - INFO - Iter [29/100]\tlr_generator: 2.500e-05, eta: 0:02:04, time: 0.891, data_time: 0.003, memory: 3518, loss_pix: 0.0846, loss: 0.0846\n","2021-07-01 12:07:40,104 - mmedit - INFO - Iter [30/100]\tlr_generator: 2.500e-05, eta: 0:02:01, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0658, loss: 0.0658\n","2021-07-01 12:07:40,993 - mmedit - INFO - Iter [31/100]\tlr_generator: 2.500e-05, eta: 0:01:57, time: 0.889, data_time: 0.003, memory: 3518, loss_pix: 0.0502, loss: 0.0502\n","2021-07-01 12:07:41,885 - mmedit - INFO - Iter [32/100]\tlr_generator: 2.500e-05, eta: 0:01:54, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0622, loss: 0.0622\n","2021-07-01 12:07:42,787 - mmedit - INFO - Iter [33/100]\tlr_generator: 2.500e-05, eta: 0:01:50, time: 0.902, data_time: 0.003, memory: 3518, loss_pix: 0.0657, loss: 0.0657\n","2021-07-01 12:07:43,674 - mmedit - INFO - Iter [34/100]\tlr_generator: 2.500e-05, eta: 0:01:47, time: 0.888, data_time: 0.003, memory: 3518, loss_pix: 0.0643, loss: 0.0643\n","2021-07-01 12:07:44,567 - mmedit - INFO - Iter [35/100]\tlr_generator: 2.500e-05, eta: 0:01:44, time: 0.893, data_time: 0.003, memory: 3518, loss_pix: 0.0898, loss: 0.0898\n","2021-07-01 12:07:45,458 - mmedit - INFO - Iter [36/100]\tlr_generator: 2.500e-05, eta: 0:01:41, time: 0.890, data_time: 0.003, memory: 3518, loss_pix: 0.0865, loss: 0.0865\n","2021-07-01 12:07:46,341 - mmedit - INFO - Iter [37/100]\tlr_generator: 2.500e-05, eta: 0:01:38, time: 0.883, data_time: 0.003, memory: 3518, loss_pix: 0.0511, loss: 0.0511\n","2021-07-01 12:07:47,225 - mmedit - INFO - Iter [38/100]\tlr_generator: 2.500e-05, eta: 0:01:36, time: 0.884, data_time: 0.003, memory: 3518, loss_pix: 0.0673, loss: 0.0673\n","2021-07-01 12:07:48,109 - mmedit - INFO - Iter [39/100]\tlr_generator: 2.500e-05, eta: 0:01:33, time: 0.884, data_time: 0.003, memory: 3518, loss_pix: 0.0653, loss: 0.0653\n","2021-07-01 12:07:48,990 - mmedit - INFO - Iter [40/100]\tlr_generator: 2.500e-05, eta: 0:01:31, time: 0.881, data_time: 0.003, memory: 3518, loss_pix: 0.0828, loss: 0.0828\n","2021-07-01 12:07:49,874 - mmedit - INFO - Iter [41/100]\tlr_generator: 2.500e-05, eta: 0:01:28, time: 0.885, data_time: 0.003, memory: 3518, loss_pix: 0.0788, loss: 0.0788\n","2021-07-01 12:07:50,755 - mmedit - INFO - Iter [42/100]\tlr_generator: 2.500e-05, eta: 0:01:26, time: 0.881, data_time: 0.005, memory: 3518, loss_pix: 0.0605, loss: 0.0605\n","2021-07-01 12:07:51,638 - mmedit - INFO - Iter [43/100]\tlr_generator: 2.500e-05, eta: 0:01:24, time: 0.882, data_time: 0.003, memory: 3518, loss_pix: 0.0539, loss: 0.0539\n","2021-07-01 12:07:52,518 - mmedit - INFO - Iter [44/100]\tlr_generator: 2.500e-05, eta: 0:01:21, time: 0.881, data_time: 0.003, memory: 3518, loss_pix: 0.0503, loss: 0.0503\n","2021-07-01 12:07:53,395 - mmedit - INFO - Iter [45/100]\tlr_generator: 2.500e-05, eta: 0:01:19, time: 0.877, data_time: 0.003, memory: 3518, loss_pix: 0.0475, loss: 0.0475\n","2021-07-01 12:07:54,273 - mmedit - INFO - Iter [46/100]\tlr_generator: 2.500e-05, eta: 0:01:17, time: 0.878, data_time: 0.003, memory: 3518, loss_pix: 0.0555, loss: 0.0555\n","2021-07-01 12:07:55,159 - mmedit - INFO - Iter [47/100]\tlr_generator: 2.500e-05, eta: 0:01:15, time: 0.886, data_time: 0.007, memory: 3518, loss_pix: 0.0806, loss: 0.0806\n","2021-07-01 12:07:56,040 - mmedit - INFO - Iter [48/100]\tlr_generator: 2.500e-05, eta: 0:01:13, time: 0.881, data_time: 0.003, memory: 3518, loss_pix: 0.0576, loss: 0.0576\n","2021-07-01 12:07:56,919 - mmedit - INFO - Iter [49/100]\tlr_generator: 2.500e-05, eta: 0:01:11, time: 0.879, data_time: 0.003, memory: 3518, loss_pix: 0.0871, loss: 0.0871\n","[>>] 2/2, 0.1 task/s, elapsed: 34s, ETA:     0s\n","\n","2021-07-01 12:08:32,618 - mmedit - INFO - Iter(val) [50]\tPSNR: 20.9899, SSIM: 0.5295\n","2021-07-01 12:08:33,591 - mmedit - INFO - Iter [51/100]\tlr_generator: 2.500e-05, eta: 0:01:40, time: 35.792, data_time: 34.822, memory: 3518, loss_pix: 0.0773, loss: 0.0773\n","2021-07-01 12:08:34,462 - mmedit - INFO - Iter [52/100]\tlr_generator: 2.500e-05, eta: 0:01:37, time: 0.871, data_time: 0.003, memory: 3518, loss_pix: 0.0687, loss: 0.0687\n","2021-07-01 12:08:35,326 - mmedit - INFO - Iter [53/100]\tlr_generator: 2.500e-05, eta: 0:01:34, time: 0.864, data_time: 0.003, memory: 3518, loss_pix: 0.0665, loss: 0.0665\n","2021-07-01 12:08:36,192 - mmedit - INFO - Iter [54/100]\tlr_generator: 2.500e-05, eta: 0:01:31, time: 0.867, data_time: 0.003, memory: 3518, loss_pix: 0.0575, loss: 0.0575\n","2021-07-01 12:08:37,069 - mmedit - INFO - Iter [55/100]\tlr_generator: 2.500e-05, eta: 0:01:28, time: 0.876, data_time: 0.003, memory: 3518, loss_pix: 0.0842, loss: 0.0842\n","2021-07-01 12:08:37,942 - mmedit - INFO - Iter [56/100]\tlr_generator: 2.500e-05, eta: 0:01:25, time: 0.873, data_time: 0.003, memory: 3518, loss_pix: 0.0836, loss: 0.0836\n","2021-07-01 12:08:38,808 - mmedit - INFO - Iter [57/100]\tlr_generator: 2.500e-05, eta: 0:01:22, time: 0.867, data_time: 0.003, memory: 3518, loss_pix: 0.0580, loss: 0.0580\n","2021-07-01 12:08:39,679 - mmedit - INFO - Iter [58/100]\tlr_generator: 2.500e-05, eta: 0:01:20, time: 0.870, data_time: 0.003, memory: 3518, loss_pix: 0.0449, loss: 0.0449\n","2021-07-01 12:08:40,557 - mmedit - INFO - Iter [59/100]\tlr_generator: 2.500e-05, eta: 0:01:17, time: 0.878, data_time: 0.003, memory: 3518, loss_pix: 0.0702, loss: 0.0702\n","2021-07-01 12:08:41,430 - mmedit - INFO - Iter [60/100]\tlr_generator: 2.500e-05, eta: 0:01:14, time: 0.874, data_time: 0.003, memory: 3518, loss_pix: 0.0627, loss: 0.0627\n","2021-07-01 12:08:42,308 - mmedit - INFO - Iter [61/100]\tlr_generator: 2.500e-05, eta: 0:01:12, time: 0.878, data_time: 0.003, memory: 3518, loss_pix: 0.0716, loss: 0.0716\n","2021-07-01 12:08:43,182 - mmedit - INFO - Iter [62/100]\tlr_generator: 2.500e-05, eta: 0:01:09, time: 0.874, data_time: 0.003, memory: 3518, loss_pix: 0.0489, loss: 0.0489\n","2021-07-01 12:08:44,056 - mmedit - INFO - Iter [63/100]\tlr_generator: 2.500e-05, eta: 0:01:07, time: 0.874, data_time: 0.003, memory: 3518, loss_pix: 0.0566, loss: 0.0566\n","2021-07-01 12:08:44,932 - mmedit - INFO - Iter [64/100]\tlr_generator: 2.500e-05, eta: 0:01:05, time: 0.875, data_time: 0.003, memory: 3518, loss_pix: 0.0597, loss: 0.0597\n","2021-07-01 12:08:45,819 - mmedit - INFO - Iter [65/100]\tlr_generator: 2.500e-05, eta: 0:01:02, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0640, loss: 0.0640\n","2021-07-01 12:08:46,698 - mmedit - INFO - Iter [66/100]\tlr_generator: 2.500e-05, eta: 0:01:00, time: 0.879, data_time: 0.003, memory: 3518, loss_pix: 0.0665, loss: 0.0665\n","2021-07-01 12:08:47,580 - mmedit - INFO - Iter [67/100]\tlr_generator: 2.500e-05, eta: 0:00:58, time: 0.882, data_time: 0.003, memory: 3518, loss_pix: 0.0675, loss: 0.0675\n","2021-07-01 12:08:48,464 - mmedit - INFO - Iter [68/100]\tlr_generator: 2.500e-05, eta: 0:00:56, time: 0.883, data_time: 0.003, memory: 3518, loss_pix: 0.0641, loss: 0.0641\n","2021-07-01 12:08:49,347 - mmedit - INFO - Iter [69/100]\tlr_generator: 2.500e-05, eta: 0:00:54, time: 0.883, data_time: 0.003, memory: 3518, loss_pix: 0.0603, loss: 0.0603\n","2021-07-01 12:08:50,229 - mmedit - INFO - Iter [70/100]\tlr_generator: 2.500e-05, eta: 0:00:51, time: 0.882, data_time: 0.003, memory: 3518, loss_pix: 0.0478, loss: 0.0478\n","2021-07-01 12:08:51,113 - mmedit - INFO - Iter [71/100]\tlr_generator: 2.500e-05, eta: 0:00:49, time: 0.884, data_time: 0.003, memory: 3518, loss_pix: 0.0691, loss: 0.0691\n","2021-07-01 12:08:52,000 - mmedit - INFO - Iter [72/100]\tlr_generator: 2.500e-05, eta: 0:00:47, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0861, loss: 0.0861\n","2021-07-01 12:08:52,890 - mmedit - INFO - Iter [73/100]\tlr_generator: 2.500e-05, eta: 0:00:45, time: 0.890, data_time: 0.003, memory: 3518, loss_pix: 0.0688, loss: 0.0688\n","2021-07-01 12:08:53,792 - mmedit - INFO - Iter [74/100]\tlr_generator: 2.500e-05, eta: 0:00:43, time: 0.903, data_time: 0.003, memory: 3518, loss_pix: 0.0787, loss: 0.0787\n","2021-07-01 12:08:54,688 - mmedit - INFO - Iter [75/100]\tlr_generator: 2.500e-05, eta: 0:00:41, time: 0.896, data_time: 0.003, memory: 3518, loss_pix: 0.0744, loss: 0.0744\n","2021-07-01 12:08:55,582 - mmedit - INFO - Iter [76/100]\tlr_generator: 2.500e-05, eta: 0:00:39, time: 0.895, data_time: 0.003, memory: 3518, loss_pix: 0.0792, loss: 0.0792\n","2021-07-01 12:08:56,476 - mmedit - INFO - Iter [77/100]\tlr_generator: 2.500e-05, eta: 0:00:38, time: 0.894, data_time: 0.003, memory: 3518, loss_pix: 0.0645, loss: 0.0645\n","2021-07-01 12:08:57,368 - mmedit - INFO - Iter [78/100]\tlr_generator: 2.500e-05, eta: 0:00:36, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0475, loss: 0.0475\n","2021-07-01 12:08:58,261 - mmedit - INFO - Iter [79/100]\tlr_generator: 2.500e-05, eta: 0:00:34, time: 0.893, data_time: 0.003, memory: 3518, loss_pix: 0.0627, loss: 0.0627\n","2021-07-01 12:08:59,159 - mmedit - INFO - Iter [80/100]\tlr_generator: 2.500e-05, eta: 0:00:32, time: 0.897, data_time: 0.003, memory: 3518, loss_pix: 0.0626, loss: 0.0626\n","2021-07-01 12:09:00,055 - mmedit - INFO - Iter [81/100]\tlr_generator: 2.500e-05, eta: 0:00:30, time: 0.896, data_time: 0.004, memory: 3518, loss_pix: 0.0681, loss: 0.0681\n","2021-07-01 12:09:00,954 - mmedit - INFO - Iter [82/100]\tlr_generator: 2.500e-05, eta: 0:00:28, time: 0.900, data_time: 0.003, memory: 3518, loss_pix: 0.0671, loss: 0.0671\n","2021-07-01 12:09:01,860 - mmedit - INFO - Iter [83/100]\tlr_generator: 2.500e-05, eta: 0:00:27, time: 0.906, data_time: 0.003, memory: 3518, loss_pix: 0.0825, loss: 0.0825\n","2021-07-01 12:09:02,760 - mmedit - INFO - Iter [84/100]\tlr_generator: 2.500e-05, eta: 0:00:25, time: 0.900, data_time: 0.003, memory: 3518, loss_pix: 0.0594, loss: 0.0594\n","2021-07-01 12:09:03,658 - mmedit - INFO - Iter [85/100]\tlr_generator: 2.500e-05, eta: 0:00:23, time: 0.898, data_time: 0.003, memory: 3518, loss_pix: 0.0446, loss: 0.0446\n","2021-07-01 12:09:04,555 - mmedit - INFO - Iter [86/100]\tlr_generator: 2.500e-05, eta: 0:00:22, time: 0.897, data_time: 0.003, memory: 3518, loss_pix: 0.0491, loss: 0.0491\n","2021-07-01 12:09:05,452 - mmedit - INFO - Iter [87/100]\tlr_generator: 2.500e-05, eta: 0:00:20, time: 0.896, data_time: 0.003, memory: 3518, loss_pix: 0.0450, loss: 0.0450\n","2021-07-01 12:09:06,351 - mmedit - INFO - Iter [88/100]\tlr_generator: 2.500e-05, eta: 0:00:18, time: 0.900, data_time: 0.003, memory: 3518, loss_pix: 0.0795, loss: 0.0795\n","2021-07-01 12:09:07,257 - mmedit - INFO - Iter [89/100]\tlr_generator: 2.500e-05, eta: 0:00:17, time: 0.905, data_time: 0.003, memory: 3518, loss_pix: 0.0522, loss: 0.0522\n","2021-07-01 12:09:08,161 - mmedit - INFO - Iter [90/100]\tlr_generator: 2.500e-05, eta: 0:00:15, time: 0.904, data_time: 0.003, memory: 3518, loss_pix: 0.0588, loss: 0.0588\n","2021-07-01 12:09:09,063 - mmedit - INFO - Iter [91/100]\tlr_generator: 2.500e-05, eta: 0:00:13, time: 0.902, data_time: 0.003, memory: 3518, loss_pix: 0.0614, loss: 0.0614\n","2021-07-01 12:09:09,955 - mmedit - INFO - Iter [92/100]\tlr_generator: 2.500e-05, eta: 0:00:12, time: 0.892, data_time: 0.003, memory: 3518, loss_pix: 0.0599, loss: 0.0599\n","2021-07-01 12:09:10,849 - mmedit - INFO - Iter [93/100]\tlr_generator: 2.500e-05, eta: 0:00:10, time: 0.894, data_time: 0.003, memory: 3518, loss_pix: 0.0522, loss: 0.0522\n","2021-07-01 12:09:11,749 - mmedit - INFO - Iter [94/100]\tlr_generator: 2.500e-05, eta: 0:00:09, time: 0.900, data_time: 0.003, memory: 3518, loss_pix: 0.0667, loss: 0.0667\n","2021-07-01 12:09:12,638 - mmedit - INFO - Iter [95/100]\tlr_generator: 2.500e-05, eta: 0:00:07, time: 0.889, data_time: 0.003, memory: 3518, loss_pix: 0.0558, loss: 0.0558\n","2021-07-01 12:09:13,576 - mmedit - INFO - Iter [96/100]\tlr_generator: 2.500e-05, eta: 0:00:06, time: 0.938, data_time: 0.052, memory: 3518, loss_pix: 0.0577, loss: 0.0577\n","2021-07-01 12:09:14,463 - mmedit - INFO - Iter [97/100]\tlr_generator: 2.500e-05, eta: 0:00:04, time: 0.887, data_time: 0.003, memory: 3518, loss_pix: 0.0574, loss: 0.0574\n","2021-07-01 12:09:15,351 - mmedit - INFO - Iter [98/100]\tlr_generator: 2.500e-05, eta: 0:00:02, time: 0.888, data_time: 0.003, memory: 3518, loss_pix: 0.0578, loss: 0.0578\n","2021-07-01 12:09:16,240 - mmedit - INFO - Iter [99/100]\tlr_generator: 2.500e-05, eta: 0:00:01, time: 0.889, data_time: 0.003, memory: 3518, loss_pix: 0.0556, loss: 0.0556\n","[>>] 2/2, 0.1 task/s, elapsed: 34s, ETA:     0s\n","\n","2021-07-01 12:09:52,294 - mmedit - INFO - Saving checkpoint at 100 iterations\n","2021-07-01 12:09:52,433 - mmedit - INFO - Iter(val) [100]\tPSNR: 21.4372, SSIM: 0.5687\n"]}],"source":["# BasicVSR (Video Super-Resolution - Recurrent)\n","!./tools/dist_train.sh ./demo_files/demo_config_BasicVSR.py 1 "]},{"cell_type":"markdown","metadata":{"id":"QT0zwBFt7J13"},"source":["**This is the end of this tutorial.  For more advanced usage, please see our comprehensive tutorial [here](). Enjoy coding with MMEditing!**"]}],"metadata":{"accelerator":"GPU","colab":{"collapsed_sections":[],"name":"restorer_basic_tutorial.ipynb","provenance":[],"toc_visible":true},"kernelspec":{"display_name":"Python 3.7.7 64-bit ('pre-commit': conda)","name":"python377jvsc74a57bd04974e937eb671323d80c6d61c9a5d7e99245fcc571fd7f47cadafec83c412660"},"language_info":{"name":"python","version":""},"metadata":{"interpreter":{"hash":"4974e937eb671323d80c6d61c9a5d7e99245fcc571fd7f47cadafec83c412660"}}},"nbformat":4,"nbformat_minor":2}
